約 4,100,271 件
https://w.atwiki.jp/civilization/pages/286.html
MOD/Visamod Visamodについて MOD/Visamod [#a0ce52d9] Visamod関連HP [#z9f69911] 導入方法 [#a1d4bc8d] visamod 新要素 [#z7c93d48] Visamod関連HP Site 公式Forum 導入方法 visamod 新要素 [[Visamod Ver1.50 ../Visamod Ver1.50]]
https://w.atwiki.jp/cod4mod/pages/14.html
Welcome to the Mod Tools Category This Category outlines every article which falls under the area of Mod Tools. Whether it be Mod Tool tutorials, guides, break down of specific functions or features, or any other discussion focused on the tools themselves, you can find it in this category. If you notice an Article which belongs in this category, and is not, please add the Mod Tools category to the end of the article. このカテゴリは mod ツールのエリアの下にあるすべての記事を概説します。 それがツールチュートリアル、ガイド、特定のファンクションのブレークダウンあるいは機能、あるいは他のいかなる解説がそれら自身ツールに集中した mod であるかにかかわらず、あなたはこのカテゴリにおいてそれを見つけられます。 もしあなたがこのカテゴリに属して、そしてそうではない記事に気付くなら、どうか記事の終わりに mod ツールカテゴリを加えてください。 Articles in category "Mod Tools" Battlechatter System Cod4 Compile Tools について CoD4 Map light settings Creating a custom minimap image Creating a grid file DAE2XME ~ COLLADAモデルコンバータ Direct Light Editing Terrain End User License Agreement Frequently Asked Questions ( FAQ ) Gameplay standards Lighting Making a custom MP load screen Making a room Models in Radiant MP Fast Files MP Game Script Files MP Map Checklist MP Mapping Nodes Radiant Basics Radiant Command List Radiant Command List Mapping Reflection Probes Script Commands Scripting Basics Tool Textures World Textures ミニマップを作ろう! ロードスクリーンを作ろう! (Original "http //www.infinityward.com/wiki/index.php?title=Category Mod_Tools") ff - 名無しさん 2010-02-08 21 07 12 ここは「ベトナム語化」の website - 名無しさん 2011-11-16 08 36 40 ここは「ベトナム語化」のwebsiteではないんですが、もしめわくなりましたら但当者に下のcomment を消して貰います。 - 名無しさん 2011-11-16 08 43 24 あつかましいお願いですが。COD mw3 をベトナム語化したいんで、皆さん やい方 - artisttong 2011-11-16 08 16 18 やり方を教えて頂けませんか! - artisttong 2011-11-16 08 18 49 多分日本語化のやり方と同じでしょうか?さっばり分かりませんので詳しく教えてくれましたらうれしいです。 - 名無しさん 2011-11-16 08 27 39 名前 すべて読む
https://w.atwiki.jp/wayward_jp/pages/27.html
MOD WaywardはModがサポートされていて、公式Wikiでいくつか紹介されています。 (リンクはしていませんので使用する際は公式wikiからどうぞ。公式wikiトップのSub Wikis以下Saved Game StatesページからMods pageへと行けます。) 公式wikiのModの使用法 1.当該ページにて「Download Mod」リンクを右クリックし「名前をつけて保存」で任意の場所に保存する。 またはリンクをクリックしてブラウザ上で内容を表示させてからページを右クリックして「名前をつけて保存」する。 2.Waywardを起動し、オプションメニューの「Modding」から保存したファイルを読み込む。 Modリスト Better Save/Load from File セーブ直後にリロードが必要なエラーが起こらない。 オプションではなくメインメニューにセーブボタンを追加する ロードボタンは追加ファイルのインプットではなくファイル自体を要求する。 場所ごとにきれいなファイルネームを提案する。 Opera12でもデフォルトのファイルネームであれば動作する。 ローカルストレージ全体を保存するのではなく、実際のゲームデータだけを保存する。 以前のSave/Load from File MODのデータも読み込みできる。 対応バージョン:Beta 1.6+ Save/Load from File オプションページに、ローカルファイルにセーブデータを保存/読み込みできるボタンを追加する。 このModで作成されたセーブデータも公式wikiやフォーラムで公開されている。 対応バージョン:Beta 1.4+ Show World Map Cheat ワールドマップと洞窟マップをオプションメニューのボタンで表示できるようにする。 対応バージョン:Beta 1.6+ / Free 1.9.4 + ... //公式wikiのものを少しだけ改変、画面左下メニューの「Skills」の次に表示ON/OFFボタンを移動させています //バージョン1.9.4 Free版で動作確認済 - スイッチの人 $("#actionsopen").parent().append(' button type="button" id="showMap" Show Map /button '); $("#showMap").css("background-color","rgb(64,64,128)"); $("#actionsopen").parent().on("click","#showMap",function(e){ if($("#map").css("display")=="block"){$("#map").hide()}else{$("#map").show()} e.preventDefault() }); Tweakward かなり発展したModで、ゲームプレイの改善し磨きをかけることを試みた。完全に動作させるにはModをロードしてから新しいゲームを始める(自殺する)必要がある。今はまだ自動でロードは出来ないので、始める度にModをロードする必要がある。今後も開発が続けられる予定。 対応バージョン:Beta 1.6+ EzEdit 以下のMODを一度に導入する。 Save/Load from File Show World Map Cheat EzRenderTile EzItemGet Selective Monster Spawner 対応バージョン:Beta 1.5 Monster Party 最大100のモンスターを周囲に出現させる。スポーンするモンスターの種類はタレント値と地形に依存する(通常のスポーンと同じになる)。 対応バージョン:Beta 1.6+ Unmovable Chests Fix 岩の上や洞窟の入口などにある箱(や他の周囲のアイテム)を入手する。このModをロードするとアクセスを復活させるためにそれらのものの下に土ができる。 対応バージョン:全て? 野良Mod テキストファイルにコピペしてmodで読み込む 入れ物 containerに耐久基本値を付ける これによってrepairやreinforceが出来るようになる。 + ... items.smallbag.durability = 10; items.backpack.durability = 20; items.leatherquiver.durability = 40; 値はお好みで。 苗木 「枝」から「苗木」が作れるようになる。 + ... items.sapling.recipe={requires [["branch", 1, 1]],skill "botany",level "Advanced"}; for(var i = 0; i player.crafted.length; i++)if(player.crafted[i] === "sapling")player.crafted.splice(i,1); 上の苗木modを使わなくなったら再起動のあと実行しましょう。 modを使った事によって出来たちょっとしたゴミを消してくれます。 実行しなくても影響ははい(はず) たいまつ 持続ターン + ... items.poletorch_lit.decayable[0] = 1000; items.barktorch_lit.decayable[0] = 4000; items.animalfattorch_lit.decayable[0] = 14000; 値はお好みで。↑は全部4倍した値 鶏 鳥肉が食べたい。羽を毟りたい。そんな貴方に + ... 非推奨 for(var i=0;i 0xB;i++)for(var j=0;j 0xB;j++)spawnMonster("chicken", player.x+player.direction.x*6-5+i, player.y+player.direction.y*6-5+j); passTurn(false); 推奨 spawnMonster("chicken", player.x+player.direction.x, player.y+player.direction.y); passTurn(false); ↑の変則版、モンスター呼び出し。 モンスターと戦いたい、そんな君に……。 + ... 魚類はちょっと特殊 spawnMonster("rabbit", player.x+player.direction.x, player.y+player.direction.y); passTurn(false); //spawnMonster("rabbit"の"ここに"↓の英文名を書き込むと目の前にモンスターが出現します。 //ただし、目の前に障害物や既にモンスターが存在する場合は出現しません。 //rabbit = うさぎ //slime = スライム //jellycube = ゼリーキューブ //rat = 鼠 //giantrat = 大きな鼠 //chicken = ニワトリ //harpy = ハーピー //giantspider = 大きな蜘蛛 //trapdoorspider = トラップドアスパイダー //snake = 蛇 //bear = 熊 //vampirebat = 吸血コウモリ //greywolf = グレイウルフ //imp = インプ //bogling = ボグリング //livingrock = リビングロック //zombie = ゾンビ //skeleton = スケルトン //pirateghost = パイレーツゴースト //timeskitter = タイムスキッター //fireelemental = ファイヤーエレメンタル //hobgoblin = ホブゴブリン //livingmushroom = リビングマッシュルーム //kraken = クラーケン //↓水が目の前にある場合のみ出現 //blindfish = 盲目魚 //shark = 鮫 //trout = マス 沼設置 peatを設置すると沼が出来るように + ... items.peat.use = ["stokeFire", "placeTile"], items.peat.onUse = {stokeFire 4, placeTile "swamp"} 変異種 変異種.txt 黒色火薬 A.製作時、多く作る B.発砲時、耐久にダメージ 大きなミニマップ nキーで大きなミニマップを表示。 敵表示有り。txt編集で非表示に出来るようにしてる。 ver0.0.2 ver 0.0.2 地下の事を忘れていたのでその修正。 クラフティングテーブル追加 茶色い領域にアイテムを並べるとそこからクラフトします 適当にアイテムを選ばれるのが嫌な人に craftingtable_v100.js ご利用は計画的に アイテム発生Mod + ... //日本語化の後に読み込むとアイテム名だけ日本語化 //二回読み込むと削除 if(document.getElementById('ItemGetMod') === null){ $("#optionswindow").append(' div id="ItemGetMod" / '); $("#ItemGetMod").append(' p ItemGetMod /p select id="ItemGetMod_ItemList" size="5" / '); for(var itemType in items){ $('#ItemGetMod_ItemList').append(' option value="' + itemType + '" ' + ItemGetMod_ItemList.length + " " + items[itemType].name + ' /option '); } ItemGetMod_ItemList.selectedIndex = 0; $("#ItemGetMod").append(' select id = "ItemGetMod_QualityList" size="5" \ option value = "" Durability /option \ option value = "Remarkable" Remarkable /option \ option value = "Exceptional" Exceptional /option \ option value = "Legendary" Legendary /option \ option value = "Random" selected Random /option \ /select '); $("#ItemGetMod").append(' button type="button" id="ItemGetMod_ItemGetButton" Get /button '); $("#ItemGetMod").on("click", '#ItemGetMod_ItemGetButton', function(e) { itemGet({type ItemGetMod_ItemList.value, quality ItemGetMod_QualityList.value}); craftTable() }); } else { var delTargetElement=document.getElementById('ItemGetMod'); delTargetElement.parentNode.removeChild(delTargetElement); } チェンジタイル タイルのパターンはセーブされないので悪しからず + ... //チェンジタイル //タイルのパターンはセーブされないので悪しからず //二回読み込むと削除 if(document.getElementById('ChangeTileMod') === null){ $("#optionswindow").append(' div id="ChangeTileMod" / '); $("#ChangeTileMod").append(' p ChangeTileMod /p '); $("#ChangeTileMod").append(' select id="ChangeTileMod_TileList" size="5" / '); for(var TileType in tiletypes){ $('#ChangeTileMod_TileList').append(' option value="' + TileType + '" ' + ChangeTileMod_TileList.length + " " + tiletypes[TileType].name + ' /option '); } ChangeTileMod_TileList.selectedIndex = 0; $("#ChangeTileMod").append(' select id="ChangeTileMod_PatternList" size="5" / '); $("#ChangeTileMod_PatternList").append(' option value="0" 0 /option '); $("#ChangeTileMod_PatternList").append(' option value="1" 1 /option '); $("#ChangeTileMod_PatternList").append(' option value="2" 2 /option '); $("#ChangeTileMod_PatternList").append(' option value="Random" selected Random /option '); $("#ChangeTileMod").append(' button type="button" id="ChangeTileMod_ChangeTileButton" Change /button '); $("#ChangeTileMod").on("click", '#ChangeTileMod_ChangeTileButton', function(e) { changeTile({type ChangeTileMod_TileList.value}, player.x + player.direction.x, player.y + player.direction.y, false); if(ChangeTileMod_PatternList.value == "Random"){ tile[player.x + player.direction.x][player.y + player.direction.y].gfx = Math.floor(Math.random() * 3); } else { tile[player.x + player.direction.x][player.y + player.direction.y].gfx = ChangeTileMod_PatternList.value; } passTurn(false); }); } else { var delTargetElement=document.getElementById('ChangeTileMod'); delTargetElement.parentNode.removeChild(delTargetElement); } ・いろいろスイッチ&インベントリエディタ&技術情報 ※ゲームバランス崩壊待ったなし + ... //いろいろスイッチ version 0.12c //=== スイッチ類説明 === //◆ボタン群 (押す度に発動) //[Health][Stamina][FOOD][WATER]それぞれライフ・スタミナ・満腹度・水分全快 //[Bad]毒・やけど・切り傷回復 //[HPSTBAD]ライフ・スタミナ・状態異常全快(満腹度・水分は以外) //[All]上記全て全快 //[converge map]インベントリ内の全てのボロボロの地図の目的場所を自分の足元へ(コンテナ・カバン内のものは除外) //[Find Drop]落ちているアイテムを近い順にログに表示 //[Find Placed]設置されているアイテムを近い順にログに表示 //[Find Ore]木の実、鉱物、沼地、灰、雪などの資源を近い順にログに表示 //※地上にいるときは地下のものは表示されません、また地下にいるときは地上のものは表示されません //※検索結果表示数の初期値は10です // mod_recover_saveData.findCount = 20 // と入力すると表示数が20件に変更されます、緑色のsaveボタンを押した時点での値が保存されます //[soundBuff Clear]予約済みのサウンドエフェクトを全て削除します //[invClean]現在持っているアイテムの最大ID以降の未使用領域を消去します //メインで所持するもの以外を全てカバンやチェストに保管することで最大の効果を得ることができます //上記2つとメッセージウィンドウ下部の[Clear Messages]ボタンを押すことで長時間プレイ時の処理の重さを低減します //◆スイッチ群 (押すと有効、もう一度押すと無効) //[AutoRecover]ライフとスタミナが常に全快状態 //[AlwaysDaylight]常に昼、洞窟内も昼 //[Ignore Weight]重さ超過を無視 //[fresh sea]海水を淡水に(水袋・ガラス瓶で海を整地可能)、地下エリアの暗闇部分を砂利に //[Skillgrow]スキル上昇判定時に必ずスキル経験上昇・スキル100%キャップ解除 //[Delay cut]行動待ち時間をスキップ(オプションの「Smooth Movement/動作を滑らかにする」をONにしていると効果無し) //[SpeedCraft]製作待ち時間をスキップ //[Dig100%]必ず掘れる、対象のマスを掘った時に取得できる可能性があるアイテムを全て取得する //[infinityGun]saltpeter(硝石)無しで銃が撃てる、銃弾は別途必要 //[Map100%]瓶入りの手紙を開けると必ず宝の地図が出る //[holeySkin]holey(穴あき)、空の水袋で淡水を汲んでも水が満たされない、海水は汲める //[dropAllExtend]深い淡水・深い海水に向かってアイテムを「全て置く」と、まとめて捨てます(コンテナ・カバン・装備中・QuickSlot内は除外) // 地面に置く場合も、装備中・QuickSlotのアイテムは除外します //[pickupAll]踏んだら全部拾う //[MultiCreate]ボタンはクラフトテーブルの上に生成されます、1クリックで素材が続く限り同じアイテムを作成します、HP減少時に中断します //[taintFree]耐久減少と腐敗を無くす //[autoCarve]死体を踏んで、移動するときに足元にある死体と血痕を全て切り出し(消費ターンは1) //[ugCulture]地下に植物を植えることができます //[RottenMeat]製作から腐った肉を作成できます //[calcWeight]カバン・コンテナ等を開けた時やアイテムを入れた時に、入っているアイテム数、現在の重量、空き重量が表示されます //[waterClean]キャンプファイアに向かっていなくても脱塩水、浄化水を作成できるようになります //[immotalFire]キャンプファイア・かまど・炉・金床・トーチスタンドの火が消えなくなる //v0.11更新 //ボタンの状態を保存する処理を追加しました、saveボタンで現在の状態を保存できます(押さないと保存されません) //modを読み込んだ時に保存された情報があれば自動で適用されます //ウィンドウ幅の保存・読込ができなかったため、スクリプト先頭に幅を指定する変数(mod_recover_width)を付加しています //v0.11b更新 //multiCreateボタンの設定が正常に保存・読み出しされるように修正 //v0.11c更新 //[female]コメントログにあったプレイヤー画像 [(名無しさん) 2014-01-30 06 03 11] 差し替えテスト //v0.11d更新 //[offalNOTmeat]内臓の属性(堆肥・肉)を解除します、ONにすると内臓の使い道がマジカルエッセンスと腱の2つだけになります //v0.11e更新 //[offalNOTmeat]ボタン操作時に製作テーブルも更新 //[DurMax]使用した素材の耐久値に関わらず製作品の耐久値がMAXに、最大耐久値はランダムのまま //v0.11f更新 //[popAberrant]ONの状態でモンスターがポップした場合、必ず変異種になる…はずです //[DurMax]現在耐久値を最大耐久値と同じにするよう修正 //v0.11g更新 //[multiCreate]一括作成の対象から装備品・クイックスロットのアイテムを除外 //v0.12更新 //[Find Drop]/[Find Placed]/[Find Ore]の探索用ボタンを追加 //[SoundBuff Clear]/[InvClean]のメンテナンスボタンを追加 //読み込み時に[MultiCreate]ボタンを必ずoffにするよう変更 //mod_recoverの表示/非表示切り替えボタンの位置をオプションウィンドウ内部からメイン画面左下の[Skills]ボタンの次に変更 //mod_recoverウィンドウの位置を保存するよう変更 //緑色の[save]ボタンを押した際にゲーム全体を保存するよう変更 //既知の不具合 //製作した壁を設置した後に回収すると耐久力がおかしくなって再設置できない //→コメントログにあるとおり下記のコマンドを貼り付けて対処をお願いします、このコードを使用すると耐久力の表示を修正します //for(var itm in player.invItems){if(!isFinite(player.invItems[itm].mindur)){player.invItems[itm].mindur=player.invItems[itm].maxdur}} //ロード直後に十字キーが効かないことがあります //→画面をクリックして一度でもキャラの方向を変えると以降正しく反応します //Findボタンを押したときに方向表示が文字化けする //→v0.12bで修正済 //Find Oreボタンが1件しか表示してくれない //→v0.12cでmod_recover_saveData.findCountを参照するよう修正済 Messages.debug="_0_";var f_ret=false;var buttondebug=false;var mod_recover_saveData=[];initSaveData();function _msg(a,c,b){if(!c){c=""}if(b==""||b===undefined||b===null){b="debug"}ui.message(b,c,[a])}function initSaveData(){mod_recover_saveData.left=0;mod_recover_saveData.top=0;mod_recover_saveData.width=560;mod_recover_saveData.height=140;mod_recover_saveData.recoverAuto=false;mod_recover_saveData.alwaysDaylight=false;mod_recover_saveData.ignoreWeight=false;mod_recover_saveData.freshWater=false;mod_recover_saveData.skillGrow=false;mod_recover_saveData.delaycut=false;mod_recover_saveData.speedCraft=false;mod_recover_saveData.successDig=false;mod_recover_saveData.infinityGun=false;mod_recover_saveData.treasureMap=false;mod_recover_saveData.holeySkin=false;mod_recover_saveData.dropAllEx=false;mod_recover_saveData.pickupAll=false;mod_recover_saveData.taintFree=false;mod_recover_saveData.autoCarve=false;mod_recover_saveData.ugCulture=false;mod_recover_saveData.rottenMeat=false;mod_recover_saveData.calcWeight=false;mod_recover_saveData.waterClean=false;mod_recover_saveData.immotalFire=false;mod_recover_saveData.female=false;mod_recover_saveData.offalNOTmeat=false;mod_recover_saveData.DurMax=false;mod_recover_saveData.Aberrant=false;mod_recover_saveData.findCount=10}function sw(b,a){if(b.indexOf("#")!=0){b="#"+b}if(a==""||a==undefined||a==null){a="black"}if($(b).css("background-color")=="rgb(0, 0, 0)"){a="orange"}$(b).css("background-color",a)}function appendfunc_addNewWindow(a){$("#afterload").prepend(' div id="'+a+'_root" / ');$("#"+a+"_root").prepend(' div id="'+a+'_window" class="window" title='+a+'" / ');$("#"+a+"_window").dialog({width 500,height 140,autoOpen true,closeOnEscape false,title a});$("#mod_root").append(' button id="'+a+'_visible" '+a+" /button ");$("#mod_root").on("click","#"+a+"_vibible",function(b){if($("#"+a+"_window").dialog("isOpen")){$("#"+a+"_window").dialog("close")}else{$("#"+a+"_window").dialog("open")}})}if(document.getElementById("mod_root")===null){$("#optionswindow").append(' div id="mod_root" / ');$("#optionswindow").append(' div id="mod_disp" / ')}if(document.getElementById("mod_recover_root")==null){$("#actionsopen").parent().append(' button id="mod_recover_visible" mod_recover /button ');$("#mod_recover_visible").css("background-color","rgba(150,150,0,0.6)");$("#afterload").prepend(' div id="mod_recover_root" / ');$("#mod_recover_root").prepend(' div id="mod_recover_window" class="window" title="mod_recover" / ');$("#mod_recover_window").dialog({width mod_recover_saveData.width,height 140,autoOpen true,closeOnEscape false,title "mod_recover"});$("#mod_recover_window").append(' div id="mod_recover_window_top" / ');$("#mod_recover_window_top").append(' div id="recover" / ');$("#recover").append(' button type="button" id="recover_Health" Health /button button type="button" id="recover_Stamina" Stamina /button button type="button" id="recover_Hunger" Food /button button type="button" id="recover_Thirst" WATER /buttion button type="button" id="recover_BadStatus" Bad /button button type="button" id="recover_HealthStaminaBadStatus" HPSTBAD /button button type="button" id="recover_All" All /button ');$("#recover").append(' | button id="mod_convergeMap" collectMap /button ');$("#recover").append(' | button id="mod_recover_save" save /button ');$("#recover").on("click","#mod_recover_save",function(a){mod_recover_save();_msg("mod_recover button status saved.");saveGame()});$("#mod_recover_save").css("background-color","green");$("#recover").append(' | button id="mod_searchDrop" Find Drop /button ');$("#recover").on("click","#mod_searchDrop",function(a){appendfunc_searchDropItem()});$("#recover").append(' button id="mod_searchPlaced" Find Placed /button ');$("#recover").on("click","#mod_searchPlaced",function(a){appendfunc_searchPlacedItem()});$("#recover").append(' button id="mod_findOre" Find Ore /button ');var oreSonar=[];isInitoreSonar=false;$("#recover").on("click","#mod_findOre",function(a){if(!isInitoreSonar){appendfunc_oreSonarInit();isInitoreSonar=true}appendfunc_oreSonarVerify()});$("#recover").append(' | button id="mod_SoundFlush" SoundBuff Clear /button ');$("#recover").on("click","#mod_SoundFlush",function(a){ui.message("debug","",[audio.soundList.length+" Soundbuffer flushed"]);audio.soundList=[]});$("#recover").append(' | button id="mod_invClean" InvClean /button hr ');$("#recover").on("click","#mod_invClean",function(c){var a=0;for(var b=player.invItems.length-1;b =0;b--){if(!player.invItems[b]){player.invItems.splice(b,1);a++}else{break}}ui.message("debug","",["invIndex="+player.invItems.length+"(-"+a+" buffer)"])});function appendfunc_convergeMap(){f_ret=false;var a=0;for(itemType in player.invItems){if(player.invItems[itemType].type=="tatteredmap"){a++;player.invItems[itemType].props[0]=player.x;player.invItems[itemType].props[1]=player.y}}if(a =1){ui.message("debug","",[a+" tatteled maps in your inventry pointing on your foot!"]);f_ret=true}else{ui.message("debug","",["You have no tattered map."]);f_ret=false}delete a;return f_ret}$("#recover").on("click","#mod_convergeMap",function(a){appendfunc_convergeMap()});$("#recover_Health").css("background-color","orange");$("#recover_Stamina").css("background-color","#00EA0B");$("#recover_Hunger").css("background-color","purple");$("#recover_Thirst").css("background-color","#0033FF");$("#mod_recover_button").on("click","#recover_Visible",function(a){if($("#recover").css("display")=="none"){$("#recover").css("display","block")}else{$("#recover").css("display","none")}});function appendfunc_recover(a,b){f_ret=false;switch(a){case"health" if(player.strength==player.health){if(!b){_msg("recover Health needless.","bad");return false}}else{if(!b){_msg(player.strength-player.health,"","gainedHealth")}player.health=player.strength;f_ret=true}break;case"stamina" if(player.stamina==player.dexterity){if(!b){_msg("recover Stamina needless.","bad");return false}}else{if(!b){_msg(player.dexterity-player.stamina,"","gainedStamina")}player.stamina=player.dexterity;f_ret=true}break;case"hunger" if(player.hunger==player.starvation){if(!b){_msg("recover Food needless.","bad");f_ret=false}}else{if(!b){_msg(player.starvation-player.hunger,"","gainedHunger")}player.hunger=player.starvation;f_ret=true}break;case"thirst" if(player.thirst==player.dehydration){if(!b){_msg("recover Thirst needless.","bad");f_ret=false}}else{if(!b){_msg(player.dehydration-player.thirst,"","gainedThirst")}player.thirst=player.dehydration;f_ret=true}break;case"bad" if(player.status.bleeding){if(!b){_msg("","","curedBleeding")}player.status.bleeding=false;f_ret=true}if(player.status.burning){if(!b){_msg("","","curedBurning")}player.status.burning=false;f_ret=true}if(player.status.poisoned){if(!b){_msg("","","curedPoison")}player.status.poisoned=false;f_ret=true}if(!b !f_ret){_msg("recover Bad needless.","bad")}break}return f_ret}$("#recover").on("click","#recover_Health",function(a){appendfunc_recover("health");passTurn(false)});$("#recover").on("click","#recover_Stamina",function(a){appendfunc_recover("stamina");passTurn(false)});$("#recover").on("click","#recover_Hunger",function(a){appendfunc_recover("hunger");passTurn(false)});$("#recover").on("click","#recover_Thirst",function(a){appendfunc_recover("thirst");passTurn(false)});$("#recover").on("click","#recover_BadStatus",function(a){appendfunc_recover("bad");passTurn(false)});$("#recover").on("click","#recover_HealthStaminaBadStatus",function(b){var a=false;a=appendfunc_recover("health",true)||a;a=appendfunc_recover("stamina",true)||a;a=appendfunc_recover("bad",true)||a;if(a){_msg("Health Stamina Bad Status recovered.")}else{_msg("recover HPSTBAD needless.","bad")}delete a;passTurn(false)});$("#recover").on("click","#recover_All",function(b){var a=false;a=appendfunc_recover("health",true)||a;a=appendfunc_recover("stamina",true)||a;a=appendfunc_recover("hunger",true)||a;a=appendfunc_recover("thirst",true)||a;a=appendfunc_recover("bad",true)||a;if(a){_msg("You are completely recovered.")}else{_msg("recover All needless.","bad")}delete a;passTurn(false)});function chk_recoverAuto(){if(passTurn.toString().indexOf("dexterity")==-1){return false}else{return true}}function appendfunc_recoverAuto(){f_ret=false;var prev1="game.staminaTimer++;";var new_1="game.staminaTimer++;player.health=player.strength;player.stamina=player.dexterity;";if(!chk_recoverAuto()){passTurn=eval("("+passTurn.toString().replace(prev1,new_1)+")");sw("#recover_auto","orange");f_ret=true}else{passTurn=eval("("+passTurn.toString().replace(new_1,prev1)+")");sw("#recover_auto");f_ret=false}delete prev1;delete new_1;return f_ret}$("#recover").append(' button type="button" id="recover_auto" AutoRecover /button ');if(passTurn.toString().indexOf("dexterity")!=-1){sw("#recover_auto","orange")}$("#recover").on("click","#recover_auto",function(a){appendfunc_recoverAuto()});function chk_alwaysDaylight(){if(lighting.toString().indexOf("player.light = 0;")==-1){return false}else{return true}}function appendfunc_alwaysDaylight(){f_ret=false;var prev1="var lightLevel = player.light;";var new_1="player.light = 0;var lightLevel = player.light;";var prev2="player.x game.mapSize";var new_2="player.x game.mapSize * 3";if(!chk_alwaysDaylight()){lighting=eval("("+lighting.toString().replace(prev1,new_1).replace(prev2,new_2)+")");sw("#mod_AlwaysDaylight","orange");f_ret=true}else{lighting=eval("("+lighting.toString().replace(new_1,prev1).replace(new_2,prev2)+")");sw("#mod_AlwaysDaylight","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;return f_ret}$("#recover").append(' button id="mod_AlwaysDaylight" Always Daylight /button ');if(lighting.toString().indexOf("player.light = 0;")!=-1){sw("#mod_AlwaysDaylight","orange")}$("#recover").on("click","#mod_AlwaysDaylight",function(a){appendfunc_alwaysDaylight()});function chk_ignoreWeight(){if(player.checkWeight.toString().indexOf("0===1")==-1){return false}else{return true}}function appendfunc_ignoreWeight(){f_ret=false;var prev1="player.weight player.strength + 15";var new_1="0===1";var prev2="Utilities.roundNumber(contWeight + items[player.invItems[itemId].type].weight, 1) maxWeight";var new_2="0===1";if(!chk_ignoreWeight()){player.checkWeight=eval("("+player.checkWeight.toString().replace(prev1,new_1)+")");dropItem=eval("("+dropItem.toString().replace(prev2,new_2)+")");sw("#mod_ignoreWeight","orange");f_ret=true}else{player.checkWeight=eval("("+player.checkWeight.toString().replace(new_1,prev1)+")");dropItem=eval("("+dropItem.toString().replace(new_2,prev2)+")");sw("#mod_ignoreWeight","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;return f_ret}$("#recover").append(' button id="mod_ignoreWeight" Ignore Weight /button ');if(player.checkWeight.toString().indexOf("0===1")!=-1){sw("#mod_ignoreWeight","orange")}$("#recover").on("click","#mod_ignoreWeight",function(a){appendfunc_ignoreWeight()});function chk_freshWater(){if(tile.edited==undefined){return false}else{return true}}function appendfunc_freshWater(){f_ret=false;if(!chk_freshWater()){tile.edited=true}else{delete tile.edited}for(var b=0;b 1024;b++){for(var a=0;a 512;a++){if(tile.edited){if(tile[b][a].type=="water"){tile[b][a].type="freshwater";tile[b][a].q="water"}if(tile[b][a].type=="shallowwater"){tile[b][a].type="freshshallowwater";tile[b][a].q="shallowwater"}if(tile[b][a].type=="deepwater"){tile[b][a].type="freshdeepwater";tile[b][a].q="deepwater"}if(tile[b][a].type=="darkness"){tile[b][a].type="sand";tile[b][a].q="darkness"}}else{if(tile[b][a].q){if(tile[b][a].type=="freshwater" tile[b][a].q=="water"){tile[b][a].type=tile[b][a].q}if(tile[b][a].type=="freshshallowwater" tile[b][a].q=="shallowwater"){tile[b][a].type=tile[b][a].q}if(tile[b][a].type=="freshdeepwater" tile[b][a].q=="deepwater"){tile[b][a].type=tile[b][a].q}if(tile[b][a].type=="sand" tile[b][a].q=="darkness"){tile[b][a].type=tile[b][a].q}delete tile[b][a].q}}}}if(tile[0][0].q){sw("#mod_freshWater","orange");f_ret=true}else{sw("#mod_freshWater","black");f_ret=false}delete b;delete a;return f_ret}$("#recover").append(' button id="mod_freshWater" fresh sea /button ');if(tile.edited){sw("#mod_freshWater","orange")}$("#recover").on("click","#mod_freshWater",function(a){appendfunc_freshWater()});function chk_skillGrow(){if(player.skillGain.toString().indexOf("0===0")==-1){return false}else{return true}}function appendfunc_skillGrow(){f_ret=false;var prev1="this.skills[skillType].percent = skillChance this.skills[skillType].percent 100 || bypass";var new_1="0===0";var prev2="this.skills[skillType].core 100";var new_2="this.skills[skillType].core == 100";if(!chk_skillGrow()){player.skillGain=eval("("+player.skillGain.toString().replace(prev1,new_1).replace(prev2,new_2)+")");sw("#mod_skillGrow","orange");f_ret=true}else{player.skillGain=eval("("+player.skillGain.toString().replace(new_1,prev1).replace(new_2,prev2)+")");sw("#mod_skillGrow","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;return f_ret}$("#recover").append(' button id="mod_skillGrow" Skillgrow /button ');if(player.skillGain.toString().indexOf("0===0")!=-1){$("#mod_skillGrow").css("background-color","orange")}$("#recover").on("click","#mod_skillGrow",function(a){appendfunc_skillGrow()});function chk_delaycut(){if(render.toString().indexOf("ui.keyTimer=0")==-1){return false}else{return true}}function appendfunc_delaycut(){f_ret=false;prev1="ui.keyTimer++";new_1="ui.keyTimer=0;game.delay=0;";if(!chk_delaycut()){render=eval("("+render.toString().replace(prev1,new_1)+")");sw("#mod_delaycut","orange");f_ret=true}else{render=eval("("+render.toString().replace(new_1,prev1)+")");sw("#mod_delaycut","black");f_ret=false}delete prev1;delete new_1;return f_ret}$("#recover").append(' button id="mod_delaycut" Delay cut /button ');if(render.toString().indexOf("ui.keyTimer++")==-1){sw("#mod_delaycut","orange")}$("#recover").on("click","#mod_delaycut",function(a){appendfunc_delaycut()});function chk_speedCraft(){if($._data($("#craft").get(0)).events.mouseup[0].handler.toString().indexOf("0 === 0")==-1){return false}else{return true}}function appendfunc_speedCraft(){f_ret=false;var ue2=$._data($("#craft").get(0)).events.mouseup[0].handler.toString();if(ue2.indexOf("0 === 0")==-1){ue2=ue2.replace("ui.keyTimer = 20","0 === 0");sw("#mod_speedCraft","orange");f_ret=true}else{ue2=ue2.replace("0 === 0","ui.keyTimer = 20");sw("#mod_speedCraft","black");f_ret=false}$("#craft").off("mouseup",".craft").on("mouseup",".craft",eval("("+ue2+")"));delete ue2;return f_ret}$("#recover").append(' button id="mod_speedCraft" SpeedCraft /button ');if($._data($("#craft").get(0)).events.mouseup[0].handler.toString().indexOf("0 === 0")!=-1){sw("#mod_speedCraft","orange")}$("#recover").on("click","#mod_speedCraft",function(a){appendfunc_speedCraft()});function chk_successDig(){if(player.actions.dig.toString().indexOf("itemChance = 0;")==-1){return false}else{return true}}function appendfunc_successDig(){f_ret=false;var prev1="var getItem = false;";var new_1="var getItem = false;itemChance = 0;";var prev2="var item = {";var new_2="for(var i=0;i =resource[tileType].length-1;i++){var item = {";var prev3="newTileType = cave;";var new_3="newTileType = cave;}";var prev4="type resource[tileType][resourceType][0]";var new_4="type resource[tileType][i][0]";var prev5="regathered) {";var new_5="regathered==='a'){";if(!chk_successDig()){player.actions.dig=eval("("+player.actions.dig.toString().replace(prev1,new_1).replace(prev2,new_2).replace(prev3,new_3).replace(prev4,new_4).replace(prev5,new_5)+")");sw("#mod_successDig","orange");f_ret=true}else{player.actions.dig=eval("("+player.actions.dig.toString().replace(new_1,prev1).replace(new_2,prev2).replace(new_3,prev3).replace(new_4,prev4).replace(new_5,prev5)+")");sw("#mod_successDig","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;delete prev3;delete new_3;delete prev4;delete new_4;delete prev5;delete new_5;return f_ret}$("#recover").append(' button id="mod_successDig" Dig100% /button ');if(player.actions.dig.toString().indexOf("itemChance = 0;")!=-1){sw("#mod_successDig","orange")}$("#recover").on("click","#mod_successDig",function(a){appendfunc_successDig()});function chk_infinityGun(){if(player.actions.fire.toString().indexOf("infinity bullet")==-1){return false}else{return true}}function appendfunc_infinityGun(){f_ret=false;var prev1="removeItem(blackpowder.itemId, 'INV', blackpowder.containerId);";var new_1="console.log('infinity bullet');";var prev2="!blackpowder";var new_2="0===1";if(!chk_infinityGun()){player.actions.fire=eval("("+player.actions.fire.toString().replace(prev1,new_1).replace(prev2,new_2)+")");sw("#mod_infinityGun","orange");f_ret=true}else{player.actions.fire=eval("("+player.actions.fire.toString().replace(new_1,prev1).replace(new_2,prev2)+")");sw("#mod_infinityGun","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;return f_ret}$("#recover").append(" button id=mod_infinityGun infinityGun /button ");if(player.actions.fire.toString().indexOf("infinity bullet")!=-1){sw("#mod_infinityGun","orange")}$("#recover").on("click","#mod_infinityGun",function(a){appendfunc_infinityGun()});function chk_treasureMap(){if(player.actions.openBottle.toString().indexOf("Math.random() * 1 + 1")==-1){return false}else{return true}}function appendfunc_treasureMap(){f_ret=false;var prev1="Math.random() * 4";var new_1="Math.random() * 1 + 1";if(!chk_treasureMap()){player.actions.openBottle=eval("("+player.actions.openBottle.toString().replace(prev1,new_1)+")");sw("#mod_treasureMap","orange");f_ret=true}else{player.actions.openBottle=eval("("+player.actions.openBottle.toString().replace(new_1,prev1)+")");sw("#mod_treasureMap","black");f_ret=false}delete prev1;delete new_1;return f_ret}$("#recover").append(" button id=mod_treasureMap Map100% /button ");if(player.actions.openBottle.toString().indexOf("Math.random() * 1 + 1")!=-1){sw("#mod_treasureMap","orange")}$("#recover").on("click","#mod_treasureMap",function(a){appendfunc_treasureMap()});function chk_holeySkin(){if(player.actions.fillWater.toString().indexOf("e = 'unpurifiedfreshwaterwaterskin'")!=-1){return false}else{return true}}function appendfunc_holeySkin(){f_ret=false;var prev1="e = 'unpurifiedfreshwaterwaterskin'";var new_1="e = 'waterskin'";if(!chk_holeySkin()){player.actions.fillWater=eval("("+player.actions.fillWater.toString().replace(prev1,new_1)+")");sw("#mod_holeySkin","orange");f_ret=true}else{player.actions.fillWater=eval("("+player.actions.fillWater.toString().replace(new_1,prev1)+")");sw("#mod_holeySkin","black");f_ret=false}delete prev1;delete new_1;return f_ret}$("#recover").append(" button id=mod_holeySkin holeySkin /button ");if(chk_holeySkin()){sw("#mod_holeySkin","orange")}$("#recover").on("click","#mod_holeySkin",function(a){appendfunc_holeySkin()});function chk_dropAllEx(){if(dropItem.toString().indexOf("if(dropAll)")==-1){return false}else{return true}}function appendfunc_dropAllEx(){f_ret=false;var prev1="ui.message('waterDrop', 'normal', [items[itemType].name]);";var new_1=prev1+"if(dropAll){for(var playerItem=0;playerItem player.invItems.length;playerItem++){if(player.invItems[playerItem]!==undefined player.invItems[playerItem]!==null){if(player.invItems[playerItem].type===itemType !player.invItems[playerItem].quickSlotted !player.invItems[playerItem].equipped){removeItem(playerItem,'INV',false)}}}audio.queueSfx('water');passTurn(true);return}";var prev2="player.invItems[playerItem].type === itemType";var new_2=prev2+" !player.invItems[playerItem].equipped !player.invItems[playerItem].quickSlotted";if(!chk_dropAllEx()){dropItem=eval("("+dropItem.toString().replace(prev1,new_1).replace(prev2,new_2)+")");sw("#mod_dropAllEx","orange");f_ret=true}else{dropItem=eval("("+dropItem.toString().replace(new_1,prev1).replace(new_2,prev2)+")");sw("#mod_dropAllEx","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;return f_ret}$("#recover").append(" button id=mod_dropAllEx dropAllExtend /button ");if(chk_dropAllEx()){sw("#mod_dropAllEx","orange")}$("#recover").on("click","#mod_dropAllEx",function(a){appendfunc_dropAllEx()});function chk_pickupAll(){if(checkUnderPlayer.toString().indexOf("while")==-1){return false}else{return true}}function appendfunc_pickupAll(){f_ret=false;var prev1="var keys = Object.keys(tile[playerX][playerY].tileitems);";var new_1=prev1+"while(keys.length =1){";var prev2='ui.hintDisplay("fastpickup");';var new_2=prev2+"}keys.pop();";if(!chk_pickupAll()){checkUnderPlayer=eval("("+checkUnderPlayer.toString().replace(prev1,new_1).replace(prev2,new_2)+")");$("#mod_pickupAll").css("background-color","orange");f_ret=true}else{checkUnderPlayer=eval("("+checkUnderPlayer.toString().replace(new_1,prev1).replace(new_2,prev2)+")");$("#mod_pickupAll").css("background-color","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;return f_ret}$("#recover").append(' button type="button" id="mod_pickupAll" pickupAll /button ');if(chk_pickupAll()){sw("#mod_pickupAll","orange")}$("#recover").on("click","#mod_pickupAll",function(a){appendfunc_pickupAll()});function chk_multiCreate(){if(craftItem.toString().indexOf("tmpHealth")==-1){return false}else{return true}}function appendfunc_multiCreate(){f_ret=false;var turnUpdate=false;var prev1="var consumes = [];";var new_1='do{var turnUpdate=false;craftMsg="";'+prev1;var tmpHealth=player.health;"+prev1";var prev2="return !failed;\r\n }";var new_2="}}while(craftMsg!='' tmpHealth = player.health);passTurn(true);return !failed;";var prev3="passTurn(true)";var new_3="passTurn(false)";var prev4="ui.$equip.find('li')";var new_4="/*"+prev4;var prev5="// get";var new_5="*/"+prev5;if(!chk_multiCreate()){craftItem=eval("("+craftItem.toString().replace(prev1,new_1).replace(prev2,new_2).replace(prev3,new_3).replace(prev4,new_4).replace(prev5,new_5)+")");sw("#mod_multiCreate","orange");f_ret=true}else{craftItem=eval("("+craftItem.toString().replace(new_1,prev1).replace(new_2,prev2).replace(new_3,prev3).replace(new_4,prev4).replace(new_5,prev5)+")");sw("#mod_multiCreate","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;delete prev3;delete new_3;delete prev4;delete new_4;delete prev5;delete new_5;delete tmpHealth;return f_ret}$(' div id="mod_multiCreate_frame" button type="button" id="mod_multiCreate" MultiCreate /button /div ').insertBefore($("#craftwindow"));if(chk_multiCreate()){sw("#mod_multiCreate","orange")}$("#mod_multiCreate_frame").on("click","#mod_multiCreate",function(a){appendfunc_multiCreate()});function decreaseDur(b,a){return b}function decreaseDecay(b,a){return b}function chk_taintFree(){if(player.actions.attack.toString().indexOf("ammo.mindur--")!=-1){return false}else{return true}}function appendfunc_taintFree(){f_ret=false;var prev1="ammo.mindur--;";var new_1="decreaseDur(ammo,'player.actions.attack-1');";var prev2="weapon.mindur--;";var new_2="decreaseDur(weapon,'player.actions.attack-2');";var prev3="item.mindur = tileItem.mindur - 1;";var new_3="decreaseDur(tileItem,'player.actions.dig');item.mindur = tileItem.mindur;";var prev4="tileItem.mindur - 1;";var new_4="decreaseDur(tileItem,'player.actions.gather');";var prev5="itemGet({";var new_5="decreaseDur(envItems[id],'gatherEnvItems');itemGet({";var prev6="envItems[id].mindur - 1,";var new_6="envItems[id].mindur,";var prev7="item.mindur -= 1;";var new_7="decreaseDur(item,'damageItem');";var prev8="item.mindur = tileItem.mindur - 1;";var new_8="decreaseDur(tileItem,'actionsmenu.pickup-door');item.mindur = tileItem.mindur;";var prev9="envItems[envId].decay--;";var new_9="decreaseDecay(envItems[envId],'environmentalDecay');";var prevA="envItems[envId].decay--;";var new_A="decreaseDecay(envItems[envId],'environmentalDecay');";var prevB="decayContainer[containerItem].decay--;";var new_B="decreaseDecay(decayContainer[containerItem],'decayItemsInContainer')";var prevC="player.invItems[invItem].decay--;";var new_C="decreaseDecay(player.invItems[invItem],'passTurn-1')";var prevD="tileItems[tileItemsKey[i2]].decay--;";var new_D="decreaseDecay(tileItems[tileItemsKey[i2]],'passTurn-2');";if(!chk_taintFree()){player.actions.attack=eval("("+player.actions.attack.toString().replace(prev1,new_1).replace(prev2,new_2)+")");player.actions.dig=eval("("+player.actions.dig.toString().replace(prev3,new_3)+")");player.actions.gather=eval("("+player.actions.gather.toString().replace(prev4,new_4)+")");gatherEnvItems=eval("("+gatherEnvItems.toString().replace(prev5,new_5).replace(prev6,new_6)+")");damageItem=eval("("+damageItem.toString().replace(prev7,new_7)+")");var pickupdoorfunc=$._data(ui.$actionsMenu.get(0),"events")["mouseup"][5].handler.toString().replace(prev8,new_8);ui.$actionsMenu.off("mouseup",".pickup-door").on("mouseup",".pickup-door",eval("("+pickupdoorfunc+")"));decayItemsInContainer=eval("("+decayItemsInContainer.toString().replace(prevB,new_B)+")");passTurn=eval("("+passTurn.toString().replace(prevC,new_C).replace(prevD,new_D)+")");$("#mod_taintFree").css("background-color","orange");f_ret=true}else{player.actions.attack=eval("("+player.actions.attack.toString().replace(new_1,prev1).replace(new_2,prev2)+")");player.actions.dig=eval("("+player.actions.dig.toString().replace(new_3,prev3)+")");player.actions.gather=eval("("+player.actions.gather.toString().replace(new_4,prev4)+")");gatherEnvItems=eval("("+gatherEnvItems.toString().replace(new_5,prev5).replace(new_6,prev6)+")");damageItem=eval("("+damageItem.toString().replace(new_7,prev7)+")");var pickupdoorfunc=$._data(ui.$actionsMenu.get(0),"events")["mouseup"][5].handler.toString().replace(new_8,prev8);ui.$actionsMenu.off("mouseup",".pickup-door").on("mouseup",".pickup-door",eval("("+pickupdoorfunc+")"));decayItemsInContainer=eval("("+decayItemsInContainer.toString().replace(new_B,prevB)+")");passTurn=eval("("+passTurn.toString().replace(new_C,prevC).replace(new_D,prevD)+")");sw("#mod_taintFree","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;delete prev3;delete new_3;delete prev4;delete new_4;delete prev5;delete new_5;delete prev6;delete new_6;delete prev7;delete new_7;delete prev8;delete new_8;delete prev9;delete new_9;delete prevA;delete new_A;delete prevB;delete new_B;delete prevC;delete new_C;delete prevD;delete new_D;delete pickupdoorfunc;return f_ret}$("#recover").append(' button type="button" id="mod_taintFree" taintFree /button ');if(player.actions.attack.toString().indexOf("ammo.mindur--")==-1){sw("#mod_taintFree","orange")}$("#recover").on("click","#mod_taintFree",function(a){appendfunc_taintFree()});function gatherEnvItemsEx(itemId){(eval("("+gatherEnvItems.toString().replace("passTurn(true)","passTurn(false)")+")"))(itemId)}function chk_autoCarve(){if(checkUnderPlayer.toString().indexOf("gatherUnderPlayer()")==-1){return false}else{return true}}function appendfunc_autoCarve(){f_ret=false;prev1="return true;";new_1="gatherUnderPlayer();return true;";if(!chk_autoCarve()){checkUnderPlayer=eval("("+checkUnderPlayer.toString().replace(prev1,new_1)+")");sw("#mod_autoCarve","orange");f_ret=true}else{checkUnderPlayer=eval("("+checkUnderPlayer.toString().replace(new_1,prev1)+")");sw("#mod_autoCarve","black");f_ret=false}delete prev1;delete new_1;return f_ret}function gatherUnderPlayer(){f_ret=false;if(tile[player.x][player.y].envItemList){for(itemLocation=tile[player.x][player.y].envItemList.length-1;itemLocation =0;itemLocation--){var b=false;var a=tile[player.x][player.y].envItemList[itemLocation];if(!game.isValidPickUp(a)){}else{if(environmentals[envItems[a].type].carve){if(environmentals[envItems[a].type].blood){createParticles(environmentals[envItems[a].type].blood[0],environmentals[envItems[a].type].blood[1],environmentals[envItems[a].type].blood[2])}else{createParticles(210,5,5);b=true}}if(b){placeEnvItem({type "blood",x envItems[a].x,y envItems[a].y,quality ""});ui.message("removeBlood","normal");gatherEnvItemsEx(tile[player.x][player.y].envItemList[tile[player.x][player.y].envItemList.length-1])}console.log(envItems[a].type);if(envItems[a].type.indexOf("_corpse")!=-1||envItems[a].type.indexOf("blood")!=-1){ui.message("carveCorpse","normal");if(envItems[a].type==="pirateghost_corpse"){addMilestone("reaperofsouls")}gatherEnvItemsEx(a)}}}}return}$("#recover").append(' button type="button" id="mod_autoCarve" autoCarve /button ');if(checkUnderPlayer.toString().indexOf("gatherUnderPlayer()")!=-1){sw("#mod_autoCarve","orange")}$("#recover").on("click","#mod_autoCarve",function(a){appendfunc_autoCarve()});function chk_ugCulture(){if(environmentals.thistle.cavegrow==true){return true}else{return false}}function appendfunc_ugCulture(){f_ret=false;var a=false;var b=["grassseeds_ground","sapling_ground","yellowflowers","tallgrass","thistle","wildonion_ground","cotton_ground"];if(!chk_ugCulture()){a=true}for(var c in environmentals){if($.inArray(c,b) =0){environmentals[c].cavegrow=a;if(environmentals[c].cavegrow==false){delete environmentals[c].cavegrow}}}if(a){sw("#mod_ugCulture","orange")}else{sw("#mod_ugCulture","black")}f_ret=a;delete b;delete c;delete a;return f_ret}$("#recover").append(' button type="button" id="mod_ugCulture" ugCulture /button ');if(environmentals.thistle.cavegrow){sw("#mod_ugCulture","orange")}$("#recover").on("click","#mod_ugCulture",function(a){appendfunc_ugCulture()});function chk_rottenMeat(){if(items.rottenmeat.recipe){return true}else{return false}}function appendfunc_rottenMeat(){if(!chk_rottenMeat()){items.rottenmeat.recipe={requires [["meat",1,1]],level "expert",skill "cooking"};sw("#mod_rottenMeat","orange");craftTable();f_ret=true}else{for(var a=0;a player.crafted.length;a++){if(player.crafted[a]==="rottenmeat"){player.crafted.splice(a,1)}}delete items.rottenmeat.recipe;sw("#mod_rottenMeat","black");craftTable();f_ret=false}return f_ret}$("#recover").append(' button type="button" id="mod_rottenMeat" RottenMeat /button ');if(items.rottenmeat.recipe){sw("#mod_rottenMeat","orange")}$("#recover").on("click","#mod_rottenMeat",function(a){appendfunc_rottenMeat()});function getWeightStr(f,d){f_ret="";var c=0;var a=0;var b=0;if(d=="INV"){for(var e in player.invItems[f].container){if(player.invItems[f].container[e]===null){}else{c++;b+=items[player.invItems[f].container[e].type].weight}}a=items[player.invItems[f].type].maxWeight-b.toFixed(1)}else{for(var e in envItems[f].container){if(envItems[f].container[e]===null){}else{c++;b+=items[envItems[f].container[e].type].weight}}a=environmentals[envItems[f].type].maxWeight-b.toFixed(1)}a=a.toFixed(1);if(a 0){a="Maximum weight"}f_ret=" ("+c+" items, weight "+b.toFixed(1)+"["+a+" free])";delete c;delete a;delete b;return f_ret}function chk_calcWeight(){if(player.actions.openContainer.toString().indexOf("getWeightStr")==-1){return false}else{return true}}function appendfunc_calcWeight(){f_ret=false;var prev1="ui.message(\"youOpenThe\", 'normal', [containerName]);";var new_1="ui.message(\"youOpenThe\", 'normal', [containerName+getWeightStr(id,type)]);";if(!chk_calcWeight()){player.actions.openContainer=eval("("+player.actions.openContainer.toString().replace(prev1,new_1)+")");sw("#mod_calcWeight","orange");f_ret=true}else{player.actions.openContainer=eval("("+player.actions.openContainer.toString().replace(new_1,prev1)+")");sw("#mod_calcWeight","black");f_ret=false}delete prev1;delete new_1;return f_ret}$("#recover").append(' button type="button" id="mod_calcWeight" calcWeight /button ');if(player.actions.openContainer.toString().indexOf("getWeightStr")!=-1){sw("#mod_calcWeight","orange")}$("#recover").on("click","#mod_calcWeight",function(a){appendfunc_calcWeight()});function chk_waterClean(){if(items.purifiedfreshwaterwaterskin.recipe.requiredenv!=undefined){return false}else{return true}}function appendfunc_waterClean(){if(!chk_waterClean()){delete items.purifiedfreshwaterwaterskin.recipe.requiredenv;delete items.purifiedfreshwaterglassbottle.recipe.requiredenv;delete items.desalinatedwaterwaterskin.recipe.requiredenv;delete items.desalinatedwaterglassbottle.recipe.requiredenv;sw("#mod_waterClean","orange");f_ret=true}else{items.purifiedfreshwaterwaterskin.recipe.requiredenv="campfire_lit";items.purifiedfreshwaterglassbottle.recipe.requiredenv="campfire_lit";items.desalinatedwaterwaterskin.recipe.requiredenv="campfire_lit";items.desalinatedwaterglassbottle.recipe.requiredenv="campfire_lit";sw("#mod_waterClean","black");f_ret=false}return f_ret}$("#recover").append(' button type="button" id="mod_waterClean" waterClean /button ');if(items.purifiedfreshwaterwaterskin.recipe.requiredenv==undefined){sw("#mod_waterClean","orange")}$("#recover").on("click","#mod_waterClean",function(a){appendfunc_waterClean()});function chk_immotalFire(){if(environmentals.campfire_lit.decay==undefined){return true}else{return false}}function appendfunc_immotalFire(){f_ret=false;var a=false;var c=["campfire_lit","kiln_lit","forgeandanvil_lit","furnace_lit","torchstand_lit"];var b=[60,75,60,75];if(!chk_immotalFire()){a=true}for(var d in environmentals){if($.inArray(d,c) =0){if(a==false){environmentals[d].decay=b[$.inArray(d,c)]}else{delete environmentals[d].decay}}}f_ret=a;if(a==true){sw("#mod_immotalFire","orange")}else{sw("#mod_immotalFire","black")}delete c;delete b;delete a;return f_ret}$("#recover").append(' button type="button" id="mod_immotalFire" immotalFire /button ');if(environmentals.campfire_lit.decay==undefined){sw("#mod_immotalFire","orange")}$("#recover").on("click","#mod_immotalFire",function(a){appendfunc_immotalFire()});function chk_female(){if(player.characterSprite.src.indexOf("female")==-1){return false}else{return true}}function appendfunc_female(){f_ret=false;var a="http //www.unlok.ca/wayward/images/character.png";var b="http //www55.atwiki.jp/wayward_jp?cmd=upload act=open pageid=27 file=character_female.png";if(!chk_female()){player.characterSprite.src=b;sw("#mod_female","orange");f_ret=true}else{player.characterSprite.src=a;sw("#mod_female","black");f_ret=false}delete a;delete b;passTurn(false);return f_ret}$("#recover").append(' button type="button" id="mod_female" female /button ');if(player.characterSprite.src.indexOf("female")!=-1){sw("#mod_female","orange")}$("#recover").on("click","#mod_female",function(a){appendfunc_female()});function chk_offalNOTmeat(){if(items.offal.group==undefined){return true}else{return false}}function appendfunc_offalNOTmeat(){f_ret=false;if(!chk_offalNOTmeat()){delete items.offal.group;sw("#mod_offalNOTmeat","orange");f_ret=true}else{items.offal.group=["compost","meat"];sw("#mod_offalNOTmeat","black");f_ret=false}craftTable();return f_ret}$("#recover").append(' button type="button" id="mod_offalNOTmeat" offalNOTmeat /button ');if(chk_offalNOTmeat()){sw("#mod_offalNOTmeat","orange")}$("#recover").on("click","#mod_offalNOTmeat",function(a){appendfunc_offalNOTmeat()});function chk_DurMax(){if(craftItem.toString().indexOf("items[craftType].maxdur;")==-1){return false}else{return true}}function appendfunc_DurMax(){f_ret=false;var prev1="minDur = itemDurability.originalMinimum;";var new_1="minDur = itemDurability.originalMaximum ;";var prev2="maxDur = itemDurability.originalMaximum;";var new_2="madXur = items[craftType].maxdur;";if(!chk_DurMax()){craftItem=eval("("+craftItem.toString().replace(prev1,new_1).replace(prev2,new_2)+")");sw("#mod_DurMax","orange");f_ret=true}else{craftItem=eval("("+craftItem.toString().replace(new_1,prev1).replace(new_2,prev2)+")");sw("#mod_DurMax","black");f_ret=false}delete prev1;delete new_1;delete prev2;delete new_2;return f_ret}$("#recover").append(' button type = "button" id="mod_DurMax" DurMax /button ');if(chk_DurMax()){sw("#mod_DurMax","orange")}$("#recover").on("click","#mod_DurMax",function(a){appendfunc_DurMax()});function chk_Aberrant(){if(spawnMonster.toString().indexOf("forceAberrant=true;")==-1){return false}else{return true}}function appendfunc_Aberrant(){f_ret=false;prev1="var aberrantChance = 0;";new_1="forceAberrant=true;"+prev1;if(!chk_Aberrant()){spawnMonster=eval("("+spawnMonster.toString().replace(prev1,new_1)+")");sw("#mod_Aberrant","orange");f_ret=true}else{spawnMonster=eval("("+spawnMonster.toString().replace(new_1,prev1)+")");sw("#mod_Aberrant","black");f_ret=false}delete prev1;delete new_1;return f_ret}function appendfunc_searchDropItem(){function b(j,i){if(j.far i.far){return 1}else{return-1}}var c=0;var a=0;var k=0;var h="";var g="";var d=[];ui.message("debug","bad",["===start DropitemSearch==="]);for(var f=0;f =tileItems.length;f++){if(!tileItems[f]){}else{if(player.x =512){if(tileItems[f].x 512){c=player.x-tileItems[f].x;a=player.y-tileItems[f].y;if(c =0){h=decodeURI("%E2%86%92")}else{h=decodeURI("%E2%86%90")}if(a =0){g=decodeURI("%E2%86%93")}else{g=decodeURI("%E2%86%91")}k=Math.abs(c)+Math.abs(a);d.push({type tileItems[f].type,x Math.abs(c),y Math.abs(a),dirX h,dirY g,far k})}}else{if(tileItems[f].x =512){c=player.x-tileItems[f].x;a=player.y-tileItems[f].y;if(c =0){h=decodeURI("%E2%86%92")}else{h=decodeURI("%E2%86%90")}if(a =0){g=decodeURI("%E2%86%93")}else{g=decodeURI("%E2%86%91")}k=Math.abs(c)+Math.abs(a);d.push({type tileItems[f].type,x Math.abs(c),y Math.abs(a),dirX h,dirY g,far k})}}}}d.sort(b);for(var e=1;e =(d.length =mod_recover_saveData.findCount?mod_recover_saveData.findCount d.length);e++){ui.message("debug","",["#"+e+" - "+d[e-1].type+"("+d[e-1].dirX+d[e-1].x+","+d[e-1].dirY+d[e-1].y+")[far "+d[e-1].far+"]"])}if(d.length==0){ui.message("debug","",["No item found."])}else{ui.message("debug","",[d.length+" items"])}delete c;delete a;delete h;delete g;delete k;delete dropCount;d=""}function appendfunc_searchPlacedItem(){function b(j,i){if(j.far i.far){return 1}else{return-1}}var c=0;var a=0;var k=0;var h="";var g="";var d=[];ui.message("debug","bad",["===start PlaceditemSearch==="]);for(var f=0;f =envItems.length;f++){if(!envItems[f]){}else{if(envItems[f].type!="woodenchest_unlocked"){if(player.x =512){if(envItems[f].x 512){c=player.x-envItems[f].x;a=player.y-envItems[f].y;if(c =0){h=decodeURI("%E2%86%92")}else{h=decodeURI("%E2%86%90")}if(a =0){g=decodeURI("%E2%86%93")}else{g=decodeURI("%E2%86%91")}k=Math.abs(c)+Math.abs(a);d.push({type envItems[f].type,x Math.abs(c),y Math.abs(a),dirX h,dirY g,far k})}}else{if(envItems[f].x =512){c=player.x-envItems[f].x;a=player.y-envItems[f].y;if(c =0){h=decodeURI("%E2%86%92")}else{h=decodeURI("%E2%86%90")}if(a =0){g=decodeURI("%E2%86%93")}else{g=decodeURI("%E2%86%91")}k=Math.abs(c)+Math.abs(a);d.push({type envItems[f].type,x Math.abs(c),y Math.abs(a),dirX h,dirY g,far k})}}}}}d.sort(b);for(var e=1;e =(d.length =mod_recover_saveData.findCount?mod_recover_saveData.findCount d.length);e++){ui.message("debug","",["#"+e+" - "+d[e-1].type+"("+d[e-1].dirX+d[e-1].x+","+d[e-1].dirY+d[e-1].y+")[far "+d[e-1].far+"]"])}if(d.length==0){ui.message("debug","",["No item found."])}else{ui.message("debug","",[d.length+" items"])}delete c;delete a;delete h;delete g;delete k;delete dropCount;d=""}function appendfunc_oreSonarInit(){function d(g,f){if(g.far f.far){return 1}else{return-1}}var a="";var e=false;for(var c=0;c =1023;c++){for(var b=0;b =511;b++){if(tile[c][b].type=="coalrock"||tile[c][b].type=="ironrock"||tile[c][b].type=="limestonerock"||tile[c][b].type=="talcrock"||tile[c][b].type=="ironsandstone"||tile[c][b].type=="nitersandstone"||tile[c][b].type=="ash"||tile[c][b].type=="snow"){a="ore ";e=true}if(tile[c][b].type=="berryforest"||tile[c][b].type=="fungusforest"||tile[c][b].type=="vineforest"||tile[c][b].type=="swamp"||tile[c][b].type=="coconutspalm"){a="forest";e=true}if(e){oreSonar.push({group a,x c,y b,type tile[c][b].type,relX player.x-c,relY player.y-b,far Math.abs(player.x-c)+Math.abs(player.y-b),dirX (player.x-c =0?decodeURI("%E2%86%92") decodeURI("%E2%86%90")),dirY (player.y-b =0?decodeURI("%E2%86%91") decodeURI("%E2%86%93"))});e=false}}}oreSonar.sort(d)}function appendfunc_oreSonarVerify(){function d(g,f){if(g.far f.far){return 1}else{return-1}}var e=false;var b=1;var a=[0,0];for(var c=oreSonar.length;c =0;c--){if(!oreSonar[c]){}else{if(tile[oreSonar[c].x][oreSonar[c].y].type==oreSonar[c].type){oreSonar[c].relX=player.x-oreSonar[c].x;oreSonar[c].relY=player.y-oreSonar[c].y;oreSonar[c].far=Math.abs(oreSonar[c].relX)+Math.abs(oreSonar[c].relY);oreSonar[c].dirX=(oreSonar[c].relX 0?decodeURI("%E2%86%90") decodeURI("%E2%86%92"));oreSonar[c].dirY=(oreSonar[c].relY 0?decodeURI("%E2%86%91") decodeURI("%E2%86%93"));if(oreSonar[c].x =511){a[0]++}else{a[1]++}}else{oreSonar.splice(c,1)}}}oreSonar.sort(d);ui.message("debug","bad",["===start oreSearch==="]);for(c=1;c =oreSonar.length;c++){if(player.x =511){if(oreSonar[c-1].x =511){e=true}}else{if(oreSonar[c-1].x =512){e=true}}if(e){ui.message("debug","",["#"+b+" - "+oreSonar[c-1].type+"("+oreSonar[c-1].dirX+Math.abs(oreSonar[c-1].relX)+","+oreSonar[c-1].dirY+Math.abs(oreSonar[c-1].relY)+")[far "+oreSonar[c-1].far+"]"]);b++;e=false;if(c==oreSonar.length||b mod_recover_saveData.findCount){break}}}if(b==1){ui.message("debug","",["No item found."])}else{if(player.x =511){ui.message("debug","",[a[0]+" items"])}else{ui.message("debug","",[a[1]+" items"])}}}$("#recover").append(' button type="button" id="mod_Aberrant" popAberrant /button ');if(chk_Aberrant()){sw("#mod_Aberrant","orange")}$("#recover").on("click","#mod_Aberrant",function(a){appendfunc_Aberrant()});function mod_recover_save(){mod_recover_saveData.left=$("#recover").parent().parent().parent().css("left");mod_recover_saveData.top=$("#recover").parent().parent().parent().css("top");mod_recover_saveData.width=$("#mod_recover_window").css("width");mod_recover_saveData.height=$("#mod_recover_window").css("height");mod_recover_saveData.recoverAuto=chk_recoverAuto();mod_recover_saveData.alwaysDaylight=chk_alwaysDaylight();mod_recover_saveData.ignoreWeight=chk_ignoreWeight();mod_recover_saveData.freshWater=chk_freshWater();mod_recover_saveData.skillGrow=chk_skillGrow();mod_recover_saveData.delaycut=chk_delaycut();mod_recover_saveData.speedCraft=chk_speedCraft();mod_recover_saveData.successDig=chk_successDig();mod_recover_saveData.infinityGun=chk_infinityGun();mod_recover_saveData.treasureMap=chk_treasureMap();mod_recover_saveData.holeySkin=chk_holeySkin();mod_recover_saveData.dropAllEx=chk_dropAllEx();mod_recover_saveData.pickupAll=chk_pickupAll();mod_recover_saveData.taintFree=chk_taintFree();mod_recover_saveData.autoCarve=chk_autoCarve();mod_recover_saveData.ugCulture=chk_ugCulture();mod_recover_saveData.rottenMeat=chk_rottenMeat();mod_recover_saveData.calcWeight=chk_calcWeight();mod_recover_saveData.waterClean=chk_waterClean();mod_recover_saveData.immotalFire=chk_immotalFire();mod_recover_saveData.multiCreate=chk_multiCreate();mod_recover_saveData.female=chk_female();mod_recover_saveData.offalNOTmeat=chk_offalNOTmeat();mod_recover_saveData.DurMax=chk_DurMax();mod_recover_saveData.Aberrant=chk_Aberrant();localStorage.setItem("mod_recover_saveData",JSON.stringify(mod_recover_saveData))}function mod_recover_load(){mod_recover_saveData=JSON.parse(localStorage.getItem("mod_recover_saveData"));for(prop in mod_recover_saveData){if(prop=="left"){$("#recover").parent().parent().parent().css("left",mod_recover_saveData.left)}if(prop=="top"){$("#recover").parent().parent().parent().css("top",mod_recover_saveData.top)}if(prop=="height"){$("#mod_recover_window").css("height",mod_recover_saveData.height)}if(prop=="width"){$("#mod_recover_window").css("height",mod_recover_saveData.width)}if(prop=="recoverAuto"){if(mod_recover_saveData[prop]!=chk_recoverAuto()){appendfunc_recoverAuto()}}if(prop=="alwaysDaylight"){if(mod_recover_saveData[prop]!=chk_alwaysDaylight()){appendfunc_alwaysDaylight()}}if(prop=="ignoreWeight"){if(mod_recover_saveData[prop]!=chk_ignoreWeight()){appendfunc_ignoreWeight()}}if(prop=="freshWater"){if(mod_recover_saveData[prop]!=chk_freshWater()){appendfunc_freshWater()}}if(prop=="skillGrow"){if(mod_recover_saveData[prop]!=chk_skillGrow()){appendfunc_skillGrow()}}if(prop=="delaycut"){if(mod_recover_saveData[prop]!=chk_delaycut()){appendfunc_delaycut()}}if(prop=="speedCraft"){if(mod_recover_saveData[prop]!=chk_speedCraft()){appendfunc_speedCraft()}}if(prop=="successDig"){if(mod_recover_saveData[prop]!=chk_successDig()){appendfunc_successDig()}}if(prop=="infinityGun"){if(mod_recover_saveData[prop]!=chk_infinityGun()){appendfunc_infinityGun()}}if(prop=="treasureMap"){if(mod_recover_saveData[prop]!=chk_treasureMap()){appendfunc_treasureMap()}}if(prop=="holeySkin"){if(mod_recover_saveData[prop]!=chk_holeySkin()){appendfunc_holeySkin()}}if(prop=="dropAllEx"){if(mod_recover_saveData[prop]!=chk_dropAllEx()){appendfunc_dropAllEx()}}if(prop=="pickupAll"){if(mod_recover_saveData[prop]!=chk_pickupAll()){appendfunc_pickupAll()}}if(prop=="taintFree"){if(mod_recover_saveData[prop]!=chk_taintFree()){appendfunc_taintFree()}}if(prop=="autoCarve"){if(mod_recover_saveData[prop]!=chk_autoCarve()){appendfunc_autoCarve()}}if(prop=="ugCulture"){if(mod_recover_saveData[prop]!=chk_ugCulture()){appendfunc_ugCulture()}}if(prop=="rottenMeat"){if(mod_recover_saveData[prop]!=chk_rottenMeat()){appendfunc_rottenMeat()}}if(prop=="calcWeight"){if(mod_recover_saveData[prop]!=chk_calcWeight()){appendfunc_calcWeight()}}if(prop=="waterClean"){if(mod_recover_saveData[prop]!=chk_waterClean()){appendfunc_waterClean()}}if(prop=="immotalFire"){if(mod_recover_saveData[prop]!=chk_immotalFire()){appendfunc_immotalFire()}}if(prop=="multiCreate"){if(mod_recover_saveData[prop]!=chk_multiCreate()){appendfunc_multiCreate()}}if(prop=="female"){if(mod_recover_saveData[prop]!=chk_female()){appendfunc_female()}}if(prop=="offalNOTmeat"){if(mod_recover_saveData[prop]!=chk_offalNOTmeat()){appendfunc_offalNOTmeat()}}if(prop=="DurMax"){if(mod_recover_saveData[prop]!=chk_DurMax()){appendfunc_DurMax()}}if(prop=="Aberrant"){if(mod_recover_saveData[prop]!=chk_Aberrant()){appendfunc_Aberrant()}}}}mod_recover_load();$("#actionsopen").parent().on("click","#mod_recover_visible",function(a){if($("#mod_recover_window").dialog("isOpen")){$("#mod_recover_window").dialog("close")}else{$("#mod_recover_window").dialog({width mod_recover_saveData.width,height 140,autoOpen true,closeOnEscape false});$("#recover").parent().parent().parent().css("top",mod_recover_saveData.top);$("#recover").parent().parent().parent().css("left",mod_recover_saveData.left)}})}else{var delTargetElement=document.getElementById("mod_recover_root");delTargetElement.parentNode.removeChild(delTargetElement);delTargetElement=document.getElementById("mod_recover_visible");delTargetElement.parentNode.removeChild(delTargetElement);delTargetElement=document.getElementById("mod_multiCreate_frame");delTargetElement.parentNode.removeChild(delTargetElement);$("#mod_multiCreate_frame").off("click","#mod_multiCreate");$("#mod_recover_window").dialog("destroy");$("#mod_recover_window").dialog("widget").remove();delete delTargetElement}; インベントリエディタ ver0.01c + ... //試作品、オプションウィンドウの下に貼り付きます、再読み込みで消滅します //値を編集後、「update」ボタンを押すと適用されます //アイテムを落として拾い直したりすると内部ID(アイテム名の右側の数字)が変わるので、使用前に逐次「Refresh」ボタンを押してください //コンテナ・カバンの中身や地面に落ちているアイテム等、メインインベントリに入っていないアイテムは対象外です //PCのスペックにも依存しますが、IDが大きくなってくると処理が遅くなりますので、再起動の目安にもどうぞ //内部的なDecay(使用期限)無しは-1です、-1の値が入っている時は背景が灰色になります // 未実装・不具合等 //数値を入力すべきボックスに文字や全角数字を入力するとそのうちNaNエラーが出ると思います(未検証)、半角数字で入力してください //品質を変更しても枠線の色は変わりません、従来どおり捨てて拾い直す必要がありますが、その際はRefreshボタンも忘れずに //入力ボックスの背景が灰色の箇所は処理を飛ばしています、Decayなど、-1にしたものを再度5000などの有効な数値に変更することはできません //[修正済]フルキー1~9を押すとクイックスロットのアイテムを使用してしまうため、数字を入力する際は必ずテンキーを使用してください //ver0.01bでキーバインド割り込み処理を追加しました、テキストボックス入力にフルキーも使用できます(砂型を投げたりする事故が防げます) //但し、上に紹介のある「大きなミニマップ」等の、ui.$documentのkeydown処理を書き換えるmodを後から読み込むと割り込み処理が解除されます //キーバインドを書き換えるmodよりも後に読み込めば両方動きます //ver0.01c 耐久等の数値を書き換える際に文字列型になっていたバグを今更修正 // Messages.debug="_0_";var ignoreID=["itemCheat_curdurability","itemCheat_maxdurability","itemCheat_decayable","itemCheat_bonusValue"];var appendkeybind=$._data(ui.$document.get(0), "events")["keydown"][0].handler.toString();if(appendkeybind.indexOf(ignoreID[0])==-1){var basekeybindstr="ui.$code.is";var tmpkeybindstr='(" focus")){return true}else if($("#ignoreID[i]").is';var keybindstr="";for(var i=0;i =ignoreID.length;i++){keybindstr=keybindstr+tmpkeybindstr.replace("ignoreID[i]",ignoreID[i])}appendkeybind=appendkeybind.replace(basekeybindstr,basekeybindstr+keybindstr);ui.$document.unbind("keydown").bind("keydown",eval("("+appendkeybind+")"));delete besekeybindstr;delete tmpkeybindstr;delete keybindstr;}if(document.getElementById("itemCheat") === null){$("#optionswindow").append(' div id="itemCheat" / ');$("#itemCheat").append(" hr p @@mod_invCheat@@ /p ");$("#itemCheat").append(' select id="itemCheat_invList" size="8" / ');$("#itemCheat_invList").css("float","left").css("margin","5px");for(var i=0;i =player.invItems.length;i++){if(!player.invItems[i]){}else{$("#itemCheat_invList").append(' option value="'+i+'" '+i+' '+items[player.invItems[i].type].name+' /option ');}}$("#itemCheat").append(' button type="button" id="itemCheat_refresh" Refresh /button nbsp; button type="button" id="itemCheat_update" update /button /p ');$("#itemCheat").append('CurDur input id="itemCheat_curdurability" size="5" / nbsp;MaxDur input id="itemCheat_maxdurability" size="5" / ');$("#itemCheat").append('Decay nbsp; nbsp; input id="itemCheat_decayable" size="5" / br / ');$("#itemCheat").append(' div style = "float left" Quality select id="itemCheat_quality" size="4" / nbsp br / /div ');$("#itemCheat").append(' div style = "float left" Bonus nbsp; select id="itemCheat_bonusType" size="4" / nbsp; input id="itemCheat_bonusValue" size="3" / /div ');for(var skillType in player.skills){ $("#itemCheat_bonusType").append(' option value='+skillType+' '+player.skillTypes[skillType].name+' /option ')}$("#itemCheat_quality").append(' option value="Normal" Normal /option option value="Remarkable" Remarkable /option option value="Exceptional" Exceptional /option option value="Legendary" Legendary /option ');$("#itemCheat").append(' div id="itemCheat_clearboth" style="clear both" / ');$("#itemCheat").on("click","#itemCheat_refresh",function(e){$("#itemCheat_invList").children().remove();for(var i=0;i =player.invItems.length;i++){if(!player.invItems[i]){}else{$("#itemCheat_invList").append(' option value="'+i+'" '+i+' '+items[player.invItems[i].type].name+' /option ');}}});$("#itemCheat").on("click","#itemCheat_quality",function(e){if(itemCheat_quality.value=="Legendary"){$("#itemCheat_bonusType").css("background-color","white");$("#itemCheat_bonusValue").css("background-color","black")}else{$("#itemCheat_bonusType").css("background-color","gray");$("#itemCheat_bonusValue").css("background-color","gray")}});$("#itemCheat").on("click","#itemCheat_invList",function(e){if(player.invItems[itemCheat_invList.value].decay==-1){$("#itemCheat_decayable").css("background-color","gray");}else{$("#itemCheat_decayable").css("background-color","black");}itemCheat_decayable.value=player.invItems[itemCheat_invList.value].decay;itemCheat_curdurability.value=player.invItems[itemCheat_invList.value].mindur;itemCheat_maxdurability.value=player.invItems[itemCheat_invList.value].maxdur;itemCheat_quality.value="Normal";if(player.invItems[itemCheat_invList.value].props!==null player.invItems[itemCheat_invList.value].props!==undefined){itemCheat_bonusType.value=player.invItems[itemCheat_invList.value].props[0];itemCheat_bonusValue.value=player.invItems[itemCheat_invList.value].props[1]}else{itemCheat_bonusType.selectedIndex=-1;itemCheat_bonusValue.value=0}if(player.invItems[itemCheat_invList.value].quality!=""){itemCheat_quality.value=player.invItems[itemCheat_invList.value].quality;if(itemCheat_quality.value=="Legendary"){$("#itemCheat_bonusType").css("background-color","white");$("#itemCheat_bonusValue").css("background-color","black")}else{$("#itemCheat_bonusType").css("background-color","gray");$("#itemCheat_bonusValue").css("background-color","gray")}}else{itemCheat_bonusType.selectedIndex=-1;$("#itemCheat_bonusType").css("background-color","gray");itemCheat_bonusValue.value="0";$("#itemCheat_bonusValue").css("background-color","gray");}});$("#itemCheat").on("click","#itemCheat_update",function(e){if(itemCheat_invList.selectedIndex==-1){ui.message("debug","bad",["TargetItem not selected!"]);}else{if($("#itemCheat_decayable").css("background-color")=="rgb(0, 0, 0)"){player.invItems[itemCheat_invList.value].decay=itemCheat_decayable.value}player.invItems[itemCheat_invList.value].mindur=parseInt(itemCheat_curdurability.value);player.invItems[itemCheat_invList.value].maxdur=parseInt(itemCheat_maxdurability.value);if(itemCheat_quality.value=="Normal"){player.invItems[itemCheat_invList.value].quality=""}else{player.invItems[itemCheat_invList.value].quality=itemCheat_quality.value}if($("#itemCheat_bonusValue").css("background-color")!="rgb(128, 128, 128)"){player.invItems[itemCheat_invList.value].props=[itemCheat_bonusType.value,parseInt(itemCheat_bonusValue.value)]}ui.message("debug","",[itemCheat_invList.value+" "+items[player.invItems[itemCheat_invList.value].type].name+" edited."]);}});}else{var delTargetElement=document.getElementById("itemCheat");delTargetElement.parentNode.removeChild(delTargetElement);} 要望の検証について + ... 「耐久値や使用期限が…減る/減らない」(食料だけ、武器・防具だけ、と種類別で指定できるのも良いかと) ◆状況 減る/減らないの処理は[taintFree]ボタンにて適用済、※アイテムの種類ごとの指定は手間がかかるので取下げ [アイテムの種類の判別方法(例)] 武器 if(items.[obj.type].damageType != undefined){ 武器用の処理 } 防具 if(items.[obj.type].equip != undefined items.[obj.type].equip != "held"){ 防具用の処理 } 食料 if(items.[obj.type].use != undefined){if(items.[obj.type].use[0] == "eat"){ 食料用の処理 } 「アイテムを入手した際における耐久値(m/n)は…ゲーム仕様に戻す/常にm=nの新品状態で入手」 ◆状況 未着手 itemGet()の先頭にitem.mindur=items[item].maxdur;を追加する、craftItemのランダム処理を潰す itemGet=eval("("+itemGet.toString().replace(";placeItem",";item.mindur=items[item.type].maxdur; placeItem")+")"); (未完成っぽい、上記だとCraft時に耐久減ったものができるので追加のコードが必要) 地面から拾った時に耐久が1減る(耐久の増減の④と⑤)処理については未調査 「自キャラ正面のパネルで燃えている火を…ゲーム仕様に戻す/何も燃やさず直ちに消す/そこに可燃物(地形、アイテム)がある場合は一瞬で燃やしつくして直ちに消火」 ◆状況 未着手 (スイッチで機能を選択して「消火」ボタンを押下、隣接するパネルへ延焼せずに消火) →何も燃やさず直ちに消すのは、player.actions.startFire()辺りにchangeTile(type "ash",以下未調査)を仕込めばできそう 可燃物の消滅は上記に加えてdropAllExcendと同じ処理をtileItemsに対して回せばできそう 「「ペミカン」を製作する素材として「内臓」を…使用する/使用しない」(「マジカルエッセンス」製作用に「内臓」をインベントリに残して置きたい場合) →これは、内臓のグループを解除すればいいのかな、多分肥料の材料にもしたくないと思うので ◆状況 [offalMeat]で実装予定 消す場合 delete items.offal.grouping; 戻す場合 items.offal.grouping=["compost","meat"]; 「徒歩による移動速度は地形の影響を…受ける/受けない」(進入不可なタイルは除く) →これはrender()の中身を把握した上で、移動ウェイトの直前に[player.x+player.direction.x][player.y+player.direction.y]の位置のタイルを判定してdelayを増減するものを差し込む形になるのかな、すぐには見当つかないです・・・ ◆状況 未着手、というか実装できる気がしないです 「プレイヤーの近くにいる鶏が各ターンに確率で卵を産む(鶏の数が多いと卵を産まなくなる)」 →次のコードを保存し、先頭の数値を書き換えてから読み込んでみてください //=== ここから === var posRange = 10; //自分と指定したマス以上離れていれば生成を行わない var firechance = 40; //ファイアエレメントが炎を撒き散らす確率、低いほど確率が上がる、0を指定すると100%落ちる var swampchance = 40; //ボグリングが足元を沼にする確率、同上 var trapchance = 200; //ホブゴブリンがくくり罠を設置する確率、同上 var eggchance = 2000; //ニワトリがタマゴを落とす確率、同上 var featherchance = 400; //ハーピーが羽を落とす確率、同上 var rangequalify = " game.monsters[monster].x player.x-posRange game.monsters[monster].x player.x+posRange game.monsters[monster].y player.y - posRange game.monsters[monster].y player.y + posRange"; monsterMove=eval("("+monsterMove.toString().replace("(Math.floor(Math.random() * 40 + 1) === 1)","(Math.floor(Math.random() * "+firechance+" + 1)===1"+rangequalify+")").replace("(Math.floor(Math.random() * 40 + 1) === 1)","(Math.floor(Math.random() * "+swampchance+" + 1)===1"+rangequalify+")").replace("(Math.floor(Math.random() * 2000 + 1) === 1)","(Math.floor(Math.random() * "+eggchance+" + 1)===1"+rangequalify+")").replace("(Math.floor(Math.random() * 200 + 1) === 1)","(Math.floor(Math.random() * "+trapchance+" + 1)===1"+rangequalify+")").replace("(Math.floor(Math.random() * 400 + 1) === 1)","(Math.floor(Math.random() * "+featherchance+" + 1)===1"+rangequalify+")")+")"); delete posRange;delete firechance; delete swampchance; delete trapchance;delete eggchance;delete featherchance;delete rangequalify; //=== ここまで === なお、上記ではposRangeで設定した距離以上離れている全てのモンスターのドロップ判定がキャンセルされますので、ニワトリのタマゴの確率だけを操作したいのであれば次のコードを //=== ここから === var posRange = 10; //自分と指定したマス以上離れていれば生成を行わない var eggchance = 2000; ////ニワトリがタマゴを落とす確率、低いほど確率が上がる、0を指定すると100%落ちる var rangequalify = " game.monsters[monster].x player.x-posRange game.monsters[monster].x player.x+posRange game.monsters[monster].y player.y - posRange game.monsters[monster].y player.y + posRange"; monsterMove=eval("("+monsterMove.toString().replace("(Math.floor(Math.random() * 2000 + 1) === 1)","(Math.floor(Math.random() * "+eggchance +" + 1)===1"+rangequalify+")")+")"); delete posRange;delete eggchance;delete rangequalify; //=== ここまで === 技術情報 + ... ◇内部処理の書き換えについて ①元処理の取得方法 ●タイプA(普通の関数) var basefunc = passTurn.toString(); ●タイプB(イベントドリブン) var basefunc = $._data( $obj .get(0), "events")[ action ][0].handler.toString(); ②処理の書き換え basefunc.toString().replace("置換前","置換後"); ③処理の書き戻し ●タイプA passTurn = eval("("+basefunc+")"); ●タイプB $obj .unbind( action ).bind( action ,eval("("+basefunc+")"); a) 私が使用している「普通の関数」の書き換え方法は、上記①②③が全部セットになって1行で動作します 例) passTurn = eval("("+passTurn.toString().replace("置換前","置換後")+")"); b) タイプB「イベントドリブン」は、「マウスが押された時」「キーが押された時」「ページが更新された時」などの処理です 私がキーバインド割り込みと呼んでいるものはこちら側の処理です ui.$document.unbind("keyup").bind("keyup",eval("("+[元処理参照].replace("置換前","置換後")+")")と 記述すると、unbind完了後(元処理削除後)に元処理参照が行われて空の関数が返ってきてしまうので、変数を使います 良い例 先に変数basefuncに元処理を格納 ①と②var basefunc = $._data(ui.$document.get(0), "events")["keyup"][0].handler.toString().replace("置換前","置換後"); ③ui.$document.unbind("keyup").bind("keyup",eval("("+basefunc+")")); 悪い例 unbindの後に処理内容を参照している ui.$document.unbind("keyup").bind("keyup",eval("("+$._data(ui.$document.get(0), "events") ["keyup"][0].handler.toString().replace("置換前","置換後")+")"); この場合、$._data(以下略)["keyup"][0].handler.toString() はunbind()後なので空の関数が返ってきてしまいます ◇スイッチ化について(いろいろボタンの構成) basefunc.indexOf()を使用しています、basefuncの取り方は上に記載したとおりです if(basefunc.indexOf("識別文字")==-1){ 置換処理 } else { 戻す処理 } ①ボタンの追加処理 $( #obj ).append(' button id = "ボタン名" 表示文字 /button '); ②既に書換が済んでしているかどうか判定(書き換えられているなら背景を指定した色に) if(basefunc.indexOf("識別文字")!=-1){ $("#ボタン名").css("background-color","色指定"); } ③ボタンの押下処理 $( #obj ).on("click","#ボタン名",function(e){ if(basefunc.indexOf("識別文字")==-1){ 置換処理; 色変更処理(ON); } else { 戻す処理; 色変更処理(OFF) } }); ←jQueryは関数の閉じカッコに気を付けましょう、functionの終わり"}"とonの終わり");" ◇複数箇所の置換と復帰について replace()関数は、最初に見つかったものだけを置き換えます "abcdabcd".replace("abcd","ABCD")の結果は "ABCDabcd"になります "ABCDABCD"に変換したい場合は "abcdabcd".replace("abcd","ABCD").replace("abcd","ABCD")とする必要があります これを利用して、識別文字を割り当てることができます 識別文字の作成方法 ①"console.log('この部分は置換済');" 等の意味の無い処理をを後ろに付ける方法(値の書き換え等で使用、文字は適当) ②"if(0 === 0)", "if(0 === 1)" などで分岐を操作する方法 などがありますが、②について、"if(0 === 0)", "if(0===0)", "if(0=== 0)", "if(0 ===0)", "if(0 === 0)"のように 書換後の処理が同じでも半角スペースの場所を変えることによって置換したものを戻す場所を特定できます (可読性は犠牲になりますが) 補足情報(蛇足とも言う) ①var と delete var basefunc; → basefuncという変数を宣言します delete basefunc; → basefuncという変数を削除します 基本的に、いらない変数は処理の最後に削除してしまう方がよいのですが、ボタン化した場合などは特に、 むやみにdeleteするとエラーの原因になりますので気を付けましょう。ちなみにdeleteですが、値を削除しますので for(var itm in items){if(items[itm].decay){delete items[itm].decay}} このような使い方をすると、以降生成されるアイテムの使用期限(decay)が全てなくなったりします ②eval()について eval(str)は、strを関数として解釈するための命令ですが、前後にカッコを付ける必要があります 悪い例 eval("function(void){ a = 1; }"); 良い例 eval("(" + "function(void){ a = 1; }" + ")"); さいごに 名前付けの規則だったりスペースを入れる場所だったり、本職の方から見たら許せないような箇所も たくさん見受けられるかと思いますが、私はプログラマでもなんでもない独学でやっているだけの 素人ですので、ご容赦頂ければと思います。 日本語化(野良Mod) 有志による日本語化対応 ※最新版は MOD(日本語化) へ。 旧版は編集の邪魔になるので削除。 匿名Mod ミニModを不定期に追加していきます ※一部のコードはコメントアウトしてますが、これはModPackとしてまとめて使用しても癖の少ない変更点で抑えるために行っているためです。 有効にしたいときは、コメント文「//」を削除してください。 + ... //-------------------------------------------------- //匿名ModPack ver0.03 //-------------------------------------------------- //匿名Mod 導入必須 ver0.03 //当MOD導入に必要(関数変更関数を関数インスタンスから実行できる関数を関数で登録する無名関数(MODのコメントにPatchFixのPFがあればこれが前提に必要となる) (function(){Function.prototype.funcreplace=function(){var s=this.toString().substring(this.toString().indexOf("{")+2,this.toString().lastIndexOf("}")-1);for(var i=0;i arguments.length-1;i+=2)s=s.replace(arguments[i],arguments[i+1]);return s;}})() //当MOD導入に必要(関数を1つ追加 MODのコメントにStyleSheetのSSがあればこれが前提に必要となる) styleSheet=function(){for(var i=0;i arguments.length;i++)document.styleSheets[0].insertRule(arguments[i], document.styleSheets[0].cssRules.length)}; //------------------------- //匿名Mod 修正版 ver0.03 //バッグを開いてる時にアイテムを右クリックするとバッグへ入るように修正する(PF 通常は地上に落とす) dropItem=new Function('itemId','location','dropAll',dropItem.funcreplace(' var fireDrop = false;',' if(game.containerOpened.containerType===\'INV\'){location=\'INV\';};var fireDrop = false;')); //箱とバッグからアイテムを取り出せなくなるバグを修正する(PF) moveToInventoryFromContainer=new Function('invId','moveAllItems',moveToInventoryFromContainer.funcreplace('var cont = envItems[containerId].container;','var cont = null;',' var item = cont[invId];',' if(cont==null)cont = envItems[containerId].container;var item = cont[invId];')); // 連続してクラフトすると移動できなくなる時間ができるバグを修正する(PF) craftItem=new Function('craftType',craftItem.funcreplace(' game.delay += 10;',' game.delay = 10;')); // 入れ物ウィンドウが開いてる場合で、箱の中身が入っていない時に箱を掘り出すと入れ物ウィンドウが閉じないバグを修正する(PF) game.isValidPickUp=new Function('envItemId',game.isValidPickUp.funcreplace(' return true;',' if(game.containerOpened.containerType==="ENV" envItems[envItemId].container envItems[envItemId].container.length==0)closeContainer();return true;')); //「全て今開いている入れ物に入れる」にて道具が入りきれなくなったら処理を中断させるように修正(PF) dropItem=new Function('itemId','location','dropAll',dropItem.funcreplace(' finishItemDrop(playerItem, location, containerId);',' if(!finishItemDrop(playerItem, location, containerId))break;')); //箱とバッグ内部に溜まる不要な情報を削除する(削除するのはnullだけなので恐らく安全 動作速度を若干向上しながらセーブデータ容量を少し減らす) closeContainer=new Function(closeContainer.funcreplace(' game.containerOpened.containerType = "";',' if(game.containerOpened.id =0 game.containerOpened.containerType){var f=game.containerOpened.containerType==="ENV"?envItems[game.containerOpened.id] player.invItems[game.containerOpened.id];if(f f.container f.container.length 0){f=f.container;var r=f.length;for(var i=0;i r;i++){if(f[i]==null){f.splice(i--,1);r--;}}}};game.containerOpened.containerType = "";')); // アイテムのコンディションが赤に表示している場合、修理すると元のコンディションに戻るように修正(PF 補強すると変化するでは効果はありません、そもそも対応させるのが面倒なので…) player.actions.repair=new Function('invId','invClass','containerId','bypassId',player.actions.repair.funcreplace(' item.mindur = item.maxdur;',' item.mindur=item.maxdur;if(item.mindur 2){if(containerId){ui.$container.find(\'.item[data-itemid=\"\'+bypassId+\'\"]\').removeClass(\'damaged\');}else{ui.$inventoryEquip.find(\'.item[data-itemid=\"\'+bypassId+\'\"]\').removeClass(\'damaged\');}};')); //設置した箱のアイテムは一切腐らなくなる(PF 大量にアイテムを保管してるワールド(容量が数MB以上)で20歩毎に発生する負荷を軽減する) // environmentalDecay=new Function('envId',environmentalDecay.funcreplace('decayItemsInContainer(envId, envItems[envId].container, \"ENV\");','')); //地上に置いたバッグのアイテムは一切腐らなくなる(PF 地上にバッグを置く人向けに負荷を軽減する) // passTurn=new Function('move',passTurn.funcreplace(' decayItemsInContainer(tileItemsKey[i2], tileItems[tileItemsKey[i2]].container, \"TILE\");','')); // スキル・実績のウィンドウが開いてる時に行動すると負荷が上がるのを抑える(PF HTML情報に変化がなければ更新しない、ブラウザによってはこの問題を解決してる事があるためその場合は効果がない) player.skillGain=new Function('skillType','mod','bypass',player.skillGain.funcreplace(' ui.$skills.html(skillOutput);',' if(skillOutput!=ui.$skills[0].innerHTML)ui.$skills.html(skillOutput);')); addMilestone=new Function('milestone',addMilestone.funcreplace(' ui.$milestones.html(milestonesOutput);',' if(milestonesOutput!=ui.$milestones[0].innerHTML)ui.$milestones.html(milestonesOutput);')); //ミニマップを無効にする(PF 移動時の負荷を軽減する) // $('#miniMapCanvas').remove();updateMiniMap=false;statbar=[];passTurn=new Function('move',passTurn.funcreplace(' game.updateMiniMap = true;','')); //------------------------- //匿名Mod ゲームUI版 ver0.03 //ウィンドウの表示枠を大きくする(SS 表示の無駄をかなり減らす事ができる) // styleSheet(".ui-dialog .ui-dialog-content{width auto !important;padding 0px !important;}",".ui-dialog {height auto !important;}",".ui-dialog .ui-dialog-titlebar,.ui-dialog .ui-dialog-buttonpane,.ui-dialog-buttonset .ui-button,.ui-button .ui-button-text,.filter{padding 0px !important;margin 0px !important;}","#inventory li,#craft div,#equipment .equip, #container li{margin 0px !important;}",".fontstyle, .fontstyle button{line-height 12px !important;}"); //閉じるボタンを縮小する(SS 「ウィンドウの表示枠を大きくする」と組み合わせる事を推奨) // styleSheet(".ui-dialog .ui-dialog-titlebar-close{margin 0px !important;top auto !important;right 0px !important;padding 5px 8px !important;background none !important;width auto !important;height auto !important;}"); // ウィンドウの背景をより薄くする(SS アイテムも透明化になると不便なのでこちらは色を付ける) // styleSheet(".ui-dialog .ui-dialog-content{background none !important;}",".ui-dialog not([aria-describedby=equipmentwindow]) .ui-dialog-content, #inventory li, #container li, #craft div not(.crafted), .equip li, .equip empty{background-color rgba(4, 4, 4, 0.4) !important;}",".equip not( empty){background none !important;}","#craft div.crafted not( hover){border-color transparent !important;}"); //ステータスバーの色を薄く&透明度をつける(SS 個人的に色が濃すぎてちょっと目に優しくないな、と) // styleSheet("#health{background none repeat scroll 0% 0% rgba(100%, 0%, 10%, 0.6) !important;}","#stamina{background none repeat scroll 0% 0% rgba(0%, 90%, 10%, 0.6) !important;}","#hunger{background none repeat scroll 0% 0% rgba(90%, 0%, 100%, 0.6) !important;}","#thirst{background none repeat scroll 0% 0% rgba(0%, 50%, 100%, 0.6) !important;}"); //クラフトウィンドウの制作できないアイテムを目立たせる // styleSheet("#craft div.crafted{box-shadow 0px 0px 10px rgba(255, 0, 29, 0.6) inset;}"); //マップを拡大しないようにする(SS マップが大きすぎる、といった場合に有効) // styleSheet(".map, #miniMapCanvas{min-width 114px !important;width 114px !important;height 114px !important;}"); //メッセージボックスを非表示にする(SS 邪魔!と思った方にお勧めです) // styleSheet("#messageoverlay{display none !important;}"); //メッセージボックスを左から右に移動する(SS) // styleSheet("#messageoverlay{left auto !important;right 0px;}"); //メッセージウィンドウの背景を透明にする(SS メッセージクリアボタンも削除) // styleSheet("#messageswindow,[aria-describedby=messageswindow] .ui-dialog-titlebar,[aria-describedby=messageswindow] .ui-dialog-buttonpane{background none !important;}","[aria-describedby=messageswindow] .ui-dialog-buttonset{display none !important;}"); //-------------------------------------------------- アイテムの枠の色を適正化 補強と変化でアイテムの状態が変わったときに枠の色を適切にする。 ※匿名Mod(Pack ver0.03)の導入が必須です。匿名Modの更新次第でこのスクリプトは必要なくなるまたは使えなくなる可能性があります。 対応バージョン DL版 Beta 1.9.2(Windows) + ... //匿名Modの「player.actions.repair=new Function~」の部分の次の行に挿入して使ってください。 //補強 player.actions.reinforce=new Function('invId','invClass','containerId','bypassId',player.actions.reinforce.funcreplace('ui.message("reinforce", \'normal\');','if(item.mindur 2){ui.$inventoryEquip.find(\'.item[data-itemid="\'+bypassId+\'"]\').removeClass(\'damaged\');}ui.message("reinforce",\'normal\');')); //変化 player.actions.transmogrify=new Function('invId','invClass','containerId','bypassId',player.actions.transmogrify.funcreplace('item.quality = "Legendary";','var old_quality=item.quality;item.quality="Legendary";ui.$inventoryEquip.find(\'.item[data-itemid="\'+bypassId+\'"]\').removeClass(old_quality.toLowerCase()).addClass(item.quality.toLowerCase());','item.mindur = legendary.maxDur;','item.mindur=legendary.maxDur;if(item.mindur 2){ui.$inventoryEquip.find(\'.item[data-itemid="\'+bypassId+\'"]\').removeClass(\'damaged\');}')); //ここからはDL版で匿名Modを導入しても修理で枠の色が戻らない場合 //「player.actions.repair=new Function~」の一行を下記のものと入れ替えてください。 //player.actions.repair=new Function('invId','invClass','containerId','bypassId',player.actions.repair.funcreplace('item.mindur = item.maxdur;','item.mindur=item.maxdur;if(item.mindur 2){ui.$inventoryEquip.find(\'.item[data-itemid="\'+bypassId+\'"]\').removeClass(\'damaged\');}')); Enjoy Life 独自のゲーム性を目指して途中まで制作していたModです このプログラムはコピー・改造して構いませんので、Mod制作にご活用ください 特徴:アイテム・モンスターの一部に独自の画像を使用、レシピを変更、固定のマップ、 モンスターの動きを変更、細かい時間管理、マイルストーン変更、雨が降るなど 操作:Actionsメニューから寝具なしで眠れます。Rキーで休憩できます ダウンロード 対応バージョン:Beta 1.9.2 β2.9.6-steam + とりあえず編集時判明部分のみ とりあえず編集時判明部分のみ ゲーム中にF10を押して最上部の[Console]を選択、最下部 のボックスに入力すると適用されます 体力・スタミナ・満腹度・喉の渇き 最大値まで回復します localPlayer.stat.stats.Health.value=localPlayer.stat.stats.Health.max; localPlayer.stat.stats.Stamina.value=localPlayer.stat.stats.Stamina.max; localPlayer.stat.stats.Hunger.value=localPlayer.stat.stats.Hunger.max; localPlayer.stat.stats.Thirst.value=localPlayer.stat.stats.Thirst.max; 最大スタミナ・満腹度・喉の渇き 最大値を指定した値に再設定します、体力は別管理のようです localPlayer.stat.stats.Stamina.max=32000; localPlayer.stat.stats.Hunger.max=500; localPlayer.stat.stats.Thirst.max=500; 善行ポイント・悪行ポイント倍率 行動による評判値の変動倍率を変更します、累積評判値が下がると強い敵が発生しやすくなります localPlayer.gameOptionsCached.reputation.malignityMultiplier=-1; localPlayer.gameOptionsCached.reputation.benignityMultiplier=10; 最大所持重量 重量制限を指定した値に再設定します、力が上がって再計算されると元に戻るのでその都度入力が必要です localPlayer.stat.stats.Weight.max=90000; 所持品の一括修理 所持品の耐久度をMAXまで回復します for(i=0;i =localPlayer.inventory.containedItems.length-1;i++){localPlayer.inventory.containedItems[i].minDur=localPlayer.inventory.containedItems[i].maxDur} 所持品の重量ゼロ カバンの内容物や設置された収納箱の中身には影響しません、weightMultiplierの値をマイナスにすると更にたくさん持つこともできます、この変更値はセーブされません var weightMultiplier=0; for(i=0;i =localPlayer.inventory.containedItems.length-1;i++){ localPlayer.inventory.containedItems[i].weight=weightMultiplier} 所持品の腐敗までの時間延長 カバンの内容物や設置された収納箱の中身には影響しません for(i=0;i =localPlayer.inventory.containedItems.length-1;i++){if(localPlayer.inventory.containedItems[i].decay)localPlayer.inventory.containedItems[i].decay=999999}} ※所持品以外には適用されませんが木の棒を装備して着火するとDecayの値が設定されます その状態でこのコマンドを実行して装備品の着火した木の棒を右クリックしてBuildを選び 地面に立てると半永久の火源になり常に調理ができます、セーブ&ロードしても保持されます また、このたいまつの斜めに金床を設置することで同じく常に利用できるようになります 上記修理・重量・腐敗時間統合 for(i=0;i =localPlayer.inventory.containedItems.length-1;i++){localPlayer.inventory.containedItems[i].minDur=localPlayer.inventory.containedItems[i].maxDur;if(localPlayer.inventory.containedItems[i].decay){localPlayer.inventory.containedItems[i].decay=999999}localPlayer.inventory.containedItems[i].weight=0} 宝の地図を自分の足元に設定する、使用済みの場合は未使用に戻す for(i=0;i =localPlayer.inventory.containedItems.length-1;i++){if(localPlayer.inventory.containedItems[i].type==121){localPlayer.inventory.containedItems[i].tatteredMap.x=localPlayer.x;localPlayer.inventory.containedItems[i].tatteredMap.y=localPlayer.y;if(typeof localPlayer.inventory.containedItems[i].used==="undefined"){}else{delete localPlayer.inventory.containedItems[i].used}}} 新しく生成されるアイテムの重量を0.1に固定する 地下の岩を掘ったら適用されていなかったり、詳細検証中 for(i=0;i =511;i++){itemManager.cachedWeights[i] ={static 0,max 0,min 0}} 所持している箱の容量拡張 インベントリ内にある収納アイテム8種に容量増加(+99999)を付与します、既に設置されている収納箱には影響しません カバン・リュック・矢筒の比較を=から==に修正 for(i=0;i =localPlayer.inventory.containedItems.length-1;i++){if(localPlayer.inventory.containedItems[i].type==132||localPlayer.inventory.containedItems[i].type==280||localPlayer.inventory.containedItems[i].type==281||localPlayer.inventory.containedItems[i].type==288||localPlayer.inventory.containedItems[i].type==381||localPlayer.inventory.containedItems[i].type==88||localPlayer.inventory.containedItems[i].type==126||localPlayer.inventory.containedItems[i].type==224){localPlayer.inventory.containedItems[i].quality=4;localPlayer.inventory.containedItems[i].legendary = {type 3, value 99999}}} プレイヤーの位置 pos()で現在の位置を取得、tp(x,y,z)で指定座標へ移動、z=1で地上、z=0で地下、zは省略可能 mons()で敵の右隣に移動、左に移動すると先制攻撃、カッコ内に数値を入れると指定した数の敵をスキップ 拠点の近くにヤギなどを繋いで敵を倒していくとmons()を呼び出すと拠点に戻れるようになる、次の敵はmons(1)で探せる function pos(){if(localPlayer.z==1){console.log("地上 "+localPlayer.x+","+localPlayer.y+")")}else{console.log("地下 "+localPlayer.x+","+localPlayer.y+")")}};function tp(x,y,z=-1){localPlayer.x=x;localPlayer.y=y;if(z==0||z==1){localPlayer.z=z}}function mons(skip=0){for(i=0;i =island.creatures.length-1;i++){if(island.creatures[i]!==undefined){if(skip =0){localPlayer.x=island.creatures[i].x+1;localPlayer.y=island.creatures[i].y;localPlayer.z=island.creatures[i].z;console.log("ID="+i+" "+island.creatures[i].type);skip=-99;break}else{skip--}}}if(skip!=-99){console.log("全てのモンスターを撃破済です")}} + steam2.9.6用スイッチ steam2.9.6用スイッチ(仮) //本体部分(v0.1) typeof userDiv!="undefined" document.body.removeChild(userDiv);userDiv=document.createElement("mod_switch");userDiv.innerHTML=" div class='sw_move' style='position absolute;padding 2px;font-size 10px;font-color white;border 1px solid;top 50px;left 100px;width 300px;background-color gray;z-index 999' id='txt' steam2.9.6用スイッチ(仮) br / input type=button style='background-color red;color white;padding 1px' id='btn1' value='HP' onClick='sw.healHP()' nbsp; input type=button style='background-color lime;color white;padding 1px' id='btn2' value='ST' onClick='sw.healST()' nbsp; input type=button style='background-color purple;color white;padding 1px' id='btn3' value='空腹' onClick='sw.healHunger()' nbsp; input type=button style='background-color cyan;color black;padding 1px' id='btn4' value='水分' onClick='sw.healThirst()' nbsp; input type=button style='background-color yellow;color black;padding 1px' id='btn5' value='BAD' onClick='sw.healBAD()' nbsp; input type=button style='background-color black;color white;padding 1px' id='btn6' value='全て' onClick='sw.healALL()' | input type=button style='background-color black;color white;padding 1px' id='btn7' value='自動回復(継続)' onClick='sw.toggleHeal()' br / input type=button style='background-color black;color white;padding 1px;margin-top 1px' id='btn20' value='箱容量+' onClick='sw.box()' nbsp; input type=button style='background-color black;color white;padding 1px;margin-top 1px' id='btn20' value='所持重量0' onClick='sw.weight0()' nbsp; input type=button style='background-color black;color white;padding 1px;margin-top 1px' id='btn21' value='重量0(継続)' onClick='sw.toggleWeight0()' nbsp; span id='span21' nbsp; nbsp; \/span hr / input type=button style='background-color black;color white;padding 1px;margin-top 1px' id='btn10' value='次の設置物' onClick='sw.doods()' nbsp; select id='selDoodQuality' style='background-color black;color white' onClick='sw.doodCount()' option value=1 品質指定無 \/option option value=0 Normal \/option option value=2 Remarkable \/option option value=3 Exceptional \/option option value=4 Legendary \/option \/select nbsp;スキップ数 nbsp; input type=button style='background-color black;color white;padding 1px;width 10px' id='btn11' value='-' onClick='sw.doodminus()' nbsp; span id='doodskip' 0 \/span nbsp; input type=button style='background-color black;color white;padding 1px;width 10px' id='btn12' value='+' onClick='sw.doodplus()' nbsp; input type=button style='background-color black;color white;padding 1px;width 10px' id='btn13' value='0' onClick='sw.doodreset()' nbsp; span id='doodCount' 計0個 \/span br / input type=button style='background-color black;color white;padding 1px;margin-top 1px' id='btn30' value='NPCへ移動' onClick='sw.moveNPC()' nbsp; select id='selNPC' style='color white;background-color black' \/select nbsp; input type=button style='background-color black;color white;padding 1px;margin-top 1px' id='btn31' value='再取得' onClick='sw.getNPC()' hr / span id='uLog' \/span ";document.body.appendChild(userDiv);sw={};sw.log=function(n){$("#uLog").text(n)};sw.healHP=function(n=false){localPlayer.stat.stats.Health.value=localPlayer.stat.stats.Health.max;n==!1 sw.log("HPを回復しました")};sw.healST=function(n=false){localPlayer.stat.stats.Stamina.value=localPlayer.stat.stats.Stamina.max;n==!1 sw.log("スタミナを回復しました")};sw.healHunger=function(n=false){localPlayer.stat.stats.Hunger.value=localPlayer.stat.stats.Hunger.max;n==!1 sw.log("満腹になりました")};sw.healThirst=function(n=false){localPlayer.stat.stats.Thirst.value=localPlayer.stat.stats.Thirst.max;n==!1 sw.log("水分を補給しました")};sw.healBAD=function(n=false){localPlayer.status.Bleeding=!1;localPlayer.status.Poisoned=!1;localPlayer.status.Burned=!1;n==!1 sw.log("出血・毒・火傷を治療しました")};sw.healALL=function(n=false){sw.healHP(!0);sw.healST(!0);sw.healHunger(!0);sw.healThirst(!0);sw.healBAD(!0);n==!1 sw.log("完全回復しました")};sw.toggleHeal=function(){$("#btn7").css("color")!="rgb(255, 0, 0)"?($("#btn7").css("color","red"),clearInterval(sw.cure),sw.cure=setInterval(function(){sw.healALL(!0)},2e3),sw.log("自動回復(2秒毎)が有効になりました")) ($("#btn7").css("color","white"),clearInterval(sw.cure),sw.log("自動回復が無効になりました"))};sw.w0=0;sw.toggleWeight0=function(){$("#btn21").css("color")!="rgb(255, 0, 0)"?($("#btn21").css("color","red"),clearInterval(sw.w0),sw.w0=setInterval(function(){sw.weight0(!0)},2e3),sw.log("自動重量0/耐久回復が有効になりました")) ($("#btn21").css("color","white"),clearInterval(sw.w0),$("#span21").css("background-color","gray"),sw.log("自動重量0/耐久回復が無効になりました"))};sw.box=function(){for(cnt=0,i=0;i =localPlayer.inventory.containedItems.length-1;i++)(localPlayer.inventory.containedItems[i].type==132||localPlayer.inventory.containedItems[i].type==280||localPlayer.inventory.containedItems[i].type==281||localPlayer.inventory.containedItems[i].type==288||localPlayer.inventory.containedItems[i].type==381||localPlayer.inventory.containedItems[i].type==88||localPlayer.inventory.containedItems[i].type==126||localPlayer.inventory.containedItems[i].type==224) (localPlayer.inventory.containedItems[i].quality=4,localPlayer.inventory.containedItems[i].legendary={type 3,value 99999},cnt++);cnt 0?sw.log("所持している収納アイテム"+cnt+"個に容量増加を付与しました") sw.log("収納アイテムを所持していません")};sw.map=function(n=false){if(n==!0)for(i=0;i =localPlayer.inventory.containedItems.length-1;i++)localPlayer.inventory.containedItems[i].type==121 typeof localPlayer.inventory.containedItems[i].used!="undefined" delete localPlayer.inventory.containedItems[i].used;for(i=0;i =localPlayer.inventory.containedItems.length-1;i++)if(localPlayer.inventory.containedItems[i].type==121 typeof localPlayer.inventory.containedItems[i].used=="undefined"){localPlayer.inventory.containedItems[i].tatteredMap.x=localPlayer.x;localPlayer.inventory.containedItems[i].tatteredMap.y=localPlayer.y;localPlayer.inventory.containedItems[i].tatteredMap.z=localPlayer.z;console.log("Map "+i+" location="+localPlayer.inventory.containedItems[i].tatteredMap.x+","+localPlayer.inventory.containedItems[i].tatteredMap.y);break}sw.log("地図ID "+i+"を足元に設定しました")};sw.pos=function(){localPlayer.z==1?console.log("[1]地上 ("+localPlayer.x+","+localPlayer.y+")") console.log("[0]地下 ("+localPlayer.x+","+localPlayer.y+")")};sw.tp=function(n,t,i=-1,r=0){r!=0?(localPlayer.x+=n,localPlayer.y+=t) (localPlayer.x=n,localPlayer.y=t);(i==0||i==1) (localPlayer.z=i)};sw.defaultWeight=function(){for(i=0;i =511;i++)itemManager.cachedWeights[i]={static 0,max 0,min 0}};sw.defaultWeight();sw.mons=function(n=0){for(i=0;i =island.creatures.length-1;i++)if(island.creatures[i]!==undefined)if(n =0){localPlayer.x=island.creatures[i].x+1;localPlayer.y=island.creatures[i].y;localPlayer.z=island.creatures[i].z;sw.log("ID="+i+" "+island.creatures[i].type+"["+sw.monsStr(island.creatures[i].type)+"の右横へ移動しました]");n=-99;break}else n--;n!=-99 sw.log("全てのモンスターを撃破済です")};sw.monsStr=function(n){return sw.monsList[n]==undefined?"==unknown==" sw.monsList[n]};sw.tileev=function(n=0){for(tileev_found=!1,i=0;i =island.tileEvents.length-1;i++)if(typeof island.tileEvents[i]!="undefined")if(n =0){sw.tp(island.tileEvents[i].x+1,island.tileEvents[i].y,island.tileEvents[i].z);sw.log("ID="+i+" へジャンプしました");tileev_found=!0;break}else n--;tileev_found||sw.log("見つかりませんでした")};sw.weight0=function(n=false){for(i=0;i =localPlayer.inventory.containedItems.length-1;i++)localPlayer.inventory.containedItems[i].maxDur =999 (localPlayer.inventory.containedItems[i].maxDur=localPlayer.inventory.containedItems[i].type==15||localPlayer.inventory.containedItems[i].type==315||localPlayer.inventory.containedItems[i].type==490||localPlayer.inventory.containedItems[i].type==152||localPlayer.inventory.containedItems[i].type==446||localPlayer.inventory.containedItems[i].type==447?10 999),localPlayer.inventory.containedItems[i].minDur=localPlayer.inventory.containedItems[i].maxDur,localPlayer.inventory.containedItems[i].decay (localPlayer.inventory.containedItems[i].decay=9999999),localPlayer.inventory.containedItems[i].weight=0;sw.blinkColor("span21");n==!1 sw.log("鞄外の所持品重量を0に設定し、耐久を全快しました")};sw.getNPC=function(){for($("#selNPC option").remove(),i=0;i =island.npcs.length-1;i++)typeof island.npcs[i]!==undefined $("#selNPC").append($(" option ").html(island.npcs[i].renamed).val(i))};sw.getNPC();sw.moveNPC=function(){sw.tp(island.npcs[$("#selNPC").val()].x+1,island.npcs[$("#selNPC").val()].y,island.npcs[$("#selNPC").val()].z);sw.log($("#selNPC option selected").html()+"の右横へ移動しました")};sw.doodplus=function(){$("#doodskip").text(parseInt($("#doodskip").text())+1)};sw.doodminus=function(){$("#doodskip").text() 0 $("#doodskip").text(parseInt($("#doodskip").text())-1)};sw.doodreset=function(){$("#doodskip").text("0")};sw.doodCount=function(n=1){for(cnt=0,n=$("#selDoodQuality").val(),i=0;i =island.doodads.length-1;i++)island.doodads[i]!==undefined (n!=1?island.doodads[i].quality==n cnt++ cnt++);$("#doodCount").text("計"+cnt+"個")};sw.doodCount();sw.doods=function(n=-1,t=0){for(n=$("#selDoodQuality").val(),t=parseInt($("#doodskip").text()),tiledood_found=!1,i=0;i =island.doodads.length-1;i++)if(typeof island.doodads[i]!="undefined" island.doodads[i].ownerIdentifier===undefined)if(n!=1){if(island.doodads[i].quality==n)if(t =0){sw.tp(island.doodads[i].x+1,island.doodads[i].y,island.doodads[i].z);sw.log("ID="+i+" "+island.doodads[i].type+"["+sw.doodStr(island.doodads[i].type)+"]へジャンプしました");tiledood_found=!0;break}else t--}else if(t =0){sw.tp(island.doodads[i].x+1,island.doodads[i].y,island.doodads[i].z);sw.log("ID="+i+" "+island.doodads[i].type+"["+sw.doodStr(island.doodads[i].type)+"]へジャンプしました");tiledood_found=!0;break}else t--;sw.doodCount();tiledood_found||sw.log("見つかりませんでした")};sw.doodStr=function(n){return sw.doodList[n]==undefined?"==unknown==" sw.doodList[n]};sw.doodList={0 "木の扉",1 "木の柵",2 "木の壁",3 "陶器の壁",4 "砂岩の壁",5 "石の壁",6 "爆発罠",7 "落とし罠",8 "くくり罠",9 "魔物のくくり罠",10 "太陽光蒸留器",11 "木の収納箱",12 "木の収納箱(施錠)",13 "魔物の像",14 "草",15 "クレマチス",16 "アザミ",17 "マッシュルーム",18 "ベニテングダケ",19 "スイッチグラス",20 "昆布",21 "ネギ",22 "パイナップル",23 "埋まった石",24 "木苺",25 "センダン草",26 "綿花",27 "ウチワサボテン",28 "タンブルウィード",29 "石の蒸留器",30 "石の蒸留器(着火)",31 "石の焚き火セット",32 "石の焚き火セット(着火)",33 "砂岩の窯",34 "砂岩の窯(着火)",35 "石の炉",36 "石の炉(着火)",37 "木の棒(設置)",38 "木の棒(設置・着火)",39 "石の鍛冶台",40 "洞窟の入口",41 "木の扉(開)",42 "木の門",43 "木の門(開)",44 "ツタウルシ",45 "錬鉄の収納箱",46 "鉄の収納箱",47 "豪華な木の収納箱",48 "スケルトン",49 "陶器の窯",50 "陶器の窯(着火)",51 "陶器の焚き火セット",52 "陶器の焚き火セット(着火)",53 "陶器の炉",54 "陶器の炉(着火)",55 "陶器の蒸留器",56 "陶器の蒸留器(着火)",57 "砂岩の焚き火セット",58 "砂岩の焚き火セット(着火)",59 "砂岩の炉",60 "砂岩の炉(着火)",61 "砂岩の蒸留器",62 "砂岩の蒸留器(着火)",63 "石の窯",64 "石の窯(着火)",65 "錬鉄の鍛冶台",66 "鉄の鍛冶台",67 "楓の木",68 "リンゴの木",69 "トウヒの木",70 "ヒノキの木",71 "ヤシの木",72 "レタス",73 "ジャガイモ",74 "ニンジン",75 "トウモロコシ",76 "キュウリ",77 "トマト",78 "カボチャ",79 "サトウキビ",80 "小麦",81 "銅の収納箱",82 "銅の鍛冶台",83 "樹皮の松明(設置)",84 "樹皮の松明(設置・着火)",85 "獣脂の松明(設置)",86 "獣脂の松明(設置・着火)",87 "ヨシュアの木",88 "弁慶サボテン",89 "アロエ",90 "獣脂のロウソク(設置)",91 "獣脂のロウソク(設置・着火)",92 "木綿の寝具(設置)",93 "羽毛の寝具(設置)",94 "ハンモック(設置)",95 "草の寝具(設置)",96 "つなぎ柱",97 "陶器の井戸",98 "砂岩の井戸",99 "石の井戸",100 "セメントの壁",101 "トウヒの木(雪)",102 "コケモモ",103 "ウメモドキ",104 "ヒナゲシ",105 "銅の収納箱(施錠)",106 "錬鉄の収納箱(施錠)",107 "鉄の収納箱(施錠)",108 "豪華な木の収納箱(施錠)"};sw.monsList={0 "スライム",1 "スライムキューブ",2 "巨大クモ",3 "熊",4 "ウサギ",5 "ヘビ",6 "巨大ネズミ",7 "ネズミ",8 "吸血コウモリ",9 "灰色オオカミ",10 "インプ",11 "ボグリング",12 "うごく岩",13 "サメ",14 "ゾンビ",15 "スケルトン",16 "幽霊海賊",17 "高速クモ",18 "ニワトリ",19 "転移クモ",20 "炎の精霊",21 "タラ",22 "ホブゴブリン",23 "うごくキノコ",24 "巨大イカ",25 "洞窟魚",26 "ハーピー",27 "デーモン",28 "骸骨魔導士",29 "クロウワーム",30 "火竜",31 "スナネコ",32 "溶岩虫",33 "ヤギ",34 "吸血ヒル",35 "トビハゼ",36 "サソリ",37 "ガラガラヘビ",38 "カモシカウサギ",39 "キセンフエダイ",40 "ウォールアイ",41 "ウィスプ",42 "北極オオカミ",43 "北極ウサギ",44 "白熊",45 "ペンギン",46 "氷の精霊",47 "氷の魔女"};sw.colorLime="rgb(0, 255, 0)";sw.colorCyan="rgb(0, 255, 255)";sw.colorRed="rgb(255, 0, 0)";sw.blinkColor=function(n){$("#"+n).css("background-color")==sw.colorLime?$("#"+n).css("background-color",sw.colorRed) $("#"+n).css("background-color",sw.colorLime)} //以下は上のものを読み込んだ後に追加で読み込んでください、作者の環境では一度に読み込むとエラーを吐き出します //ウィンドウをマウスで動かせるようにする (function(){var elements = document.getElementsByClassName("sw_move");var x,y;for(i=0;i elements.length;i++){elements[i].addEventListener("mousedown", mdown, false);elements[i].addEventListener("touchstart", mdown, false);}function mdown(e){this.classList.add("drag");if(e.type === "mousedown"){var event=e}else{var event = e.changedTouches[0]}x=event.pageX-this.offsetLeft;y=event.pageY-this.offsetTop;document.body.addEventListener("mousemove",mmove,false);document.body.addEventListener("touchmove",mmove,false)}function mmove(e){var drag=document.getElementsByClassName("drag")[0];if(e.type === "mousemove"){var event=e}else{var event=e.changedTouches[0]}e.preventDefault();drag.style.top=event.pageY-y+"px";drag.style.left=event.pageX-x+"px";drag.addEventListener("mouseup", mup, false);document.body.addEventListener("mouseleave", mup, false);drag.addEventListener("touchend", mup, false);document.body.addEventListener("touchleave", mup, false)}function mup(e){var drag = document.getElementsByClassName("drag")[0];document.body.removeEventListener("mousemove", mmove, false);drag.removeEventListener("mouseup", mup, false);document.body.removeEventListener("touchmove", mmove, false);drag.removeEventListener("touchend", mup, false);drag.classList.remove("drag")}})() 【動作確認/v0.11f】■[DurMax]:追伸/「骨の針」の素材となった「骨の棒」に現在耐久値が下がっていたアイテムが混入した可能性ですが、一連の動作確認においてインベントリのアイテムが山になったのを切っ掛けに、現在、在庫アイテムの一斉棚卸しの真っ最中でして、前々から溜め込んでいた様々なアイテムが入った宝箱を全部ひっくり返している状態です。当然、その中には現在耐久値が下がっているモノが含まれていて、それらが動作確認中に混入した事も考えられます。今後の動作確認においてはそういった古いアイテムが混ざらないよう注意します。 -- (名無しさん) 2015-05-19 17 52 59 【動作確認/v0.11f】■[popAberrant]:先の報告からこちら、新たに発生したと思われるモンスターで通常種は見かけません(多分)。 /■[DurMax]:[popAberrant]の動作確認がてら変異種から入手したアイテムを素材にアイテム製作を行い耐久値の状況をみておりますが、今の所は現在耐久値=最大耐久値で製作されています。 -- (名無しさん) 2015-05-20 01 37 12 【要望】■[MultiCreate]:[dropAllExtend]と同様に装備中のアイテムやQSのアイテムは[MultiCreate]による連続製作の対象から除外した方が良いと思いますが如何でしょう。武器や道具として使用中のアイテムが[MultiCreate]ボタンをクリックしたら待った無しの連続製作で素材として消費されてしまうと、いざ戦闘という時に素手になっている事に気付いたり、死骸からの剥ぎ取りに必要な「尖った物」が全て消費されて「切り出し」ができなかったりと(←まあ「掘る」でも良いのですが)、少々ですが不便な点も見受けられましたので。 -- (名無しさん) 2015-05-20 01 37 39 装備品・QS除外について、dropAllと製作時では処理の方法が違うので、装備・QSを除外できるか調べてみます というか軽く製作の処理を見てみた感じ鞄の中身をスキャンしてる様子がないんだけど見落としてるんだろうか・・・ -- (スイッチの人) 2015-05-20 11 49 21 手動で1つずつアイテム製作してみるとインベントリ→装備(E)→QSの順で素材となるアイテムを消費している様ですが…実装が難しそうなら仕様上の制限という事でもかまいません。 -- (名無しさん) 2015-05-20 12 50 58 v0.11gに更新しました multiCreateの対象から装備品・QS内のものを除外しました もともと鞄に入っているものは製作対象アイテムじゃなかったというオチね -- (スイッチの人) 2015-05-20 13 39 20 【動作確認/v0.11g】■[MultiCreate] 連続製作で装備アイテムとQSアイテムが素材として使用されない事を確認しました。早速の対応有り難うございます。 -- (名無しさん) 2015-05-20 14 13 37 今modを作ってますが、技術情報の内部処理の書き換えの所が参考になって助かってます。ありがとうございます! -- (はごろもフーズ) 2015-06-23 08 34 42 行き詰まってるコトや実装の仕方についてここで質問してくれれば分かる範囲ですがこっちでも調べてみますよ -- (スイッチの人) 2015-06-24 23 13 07 匿名Modの作者です。Wayward 2.0の一般公開を確認&一通りプレイ完了してからMODを再開発したいと考えています。MODは2.0用に作り直す予定で1.9.2との互換性は考慮しません。初めに日本語対応してから匿名Mod2.0の開発に取り組むと思います。 -- (匿名) 2015-07-25 05 24 37 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/kokorogaoffline/pages/47.html
Vistaの辞書登録 ゲーム内で登録したはずの単語が使えない!? ってことで、ちょっと調べてみました。(他ゲー掲示板入ってます) http //blackxdahlia.jugem.jp/?eid=43 http //www.cabal.jp/community_qbbsview.aspx?page=115 seq=1432 このサイトによると、VISTAではうまく辞書が作動しないとか>< 後日検証して、成功すればレスします。 色々なHPをみて検証してみました。 この方がやられている通りにすれば、PMでも顔文字・辞書登録した単語を使うことができました。 ようこそ「☆モスパラダイス♪」へ。 本当にありがたいですね。 初心者コーナーに戻る 更新日時 2009年05月07日
https://w.atwiki.jp/scrmstdjp/pages/79.html
この記事では、Samase等を利用したMOD制作について解説しています。 MODは非公式ですから、ゲームに損害が起きても自己責任となります。 制作ツールのダウンロード Samase ダウンロード先・使い方→http //www.staredit.net/topic/17430/5/ StarCraft RemasteredにおいてModの実行やExeファイル化に利用します。 PyMS ダウンロード先→https //github.com/poiuyqwert/PyMS Mod制作のツールセットです。 Firegraft ダウンロード先→https //mega.nz/#F!u4A1gaDa!CheCYfZVxtp64VKHHKYPcw コマンドカードの編集等に利用します。 ダウンロードしたけど実行ファイルが無い Wimdows Defenderによりウイルス判定を受けて、実行ファイルなどが削除されることがあります。(StarCraftをMod実行時に一時的に改造する動作のプログラムをおそらく誤認している) Windowsの設定アプリ→更新とセキュリティ→Windowsセキュリティ→Windowsセキュリティを開く→開いたWindowsセキュリティで、ウイルスと脅威の防止の項目から許可して復活できます (実行する際は自己責任でお願いします) Samaseで実行するModのディレクトリ構成 参考リンク Pr0nogo http //pr0nogo.wikidot.com/ https //www.youtube.com/playlist?list=PLACFHAM2MlxM-ARD3GArDF3GUrUrFdRSw http //www.staredit.net/topic/17400/
https://w.atwiki.jp/mc_memo/pages/33.html
編集 産業MOD MOD 説明 v 漁業システム Mariculture 海・釣りなどの漁業要素の追加 1.7.10
https://w.atwiki.jp/mc_memo/pages/30.html
編集 ツールMOD MOD 説明 v ツール、武器全般 Tinkers Construct ツール、武器などを作成する 1.10.2
https://w.atwiki.jp/onjmodserver/pages/18.html
7/10 MCheliを抜いてCompactEngine-1.7.10-7.1.14-2とVisibleRayGenerator-1.7.10-4.9.2-3とadditionalpipes-4.7.7を追加 5/31 GVCGunsReversion1.7.x.5.0.β.3を抜いたで 5/30 _Industrial-Craft-2-Mod-Experimental-1.7.10をindustrialcraft-2-2.2.827-experimentalに差し替え
https://w.atwiki.jp/hmiku/pages/41613.html
【検索用 Prima Vista 登録タグ P VOCALOID ど~ぱみん 初音ミク 曲 曲英 爆発電波】 + 目次 目次 曲紹介 歌詞 コメント 作詞:ど~ぱみん 作曲:ど~ぱみん 編曲:ど~ぱみん 絵:爆発電波 唄:初音ミク 曲紹介 曲名:『Prima Vista』 ど〜ぱみん氏の6作目。 彼なりの夏をいっぺんに詰め込んだらしい。 歌詞 空廻った週明け 溶け込んで馴染んだ朝 繰り返したチャンネル 降り止まない君への雨 どうしようもない位 鳴り響く電話のベル どうもない あゝ こうもない と こぼれてばかり 所詮ボクらは毎日 絵空事だけ喰ってるんだ 気を衒らう(てらう)幽霊には なりきる事もできないさ 誰も見てない興味ない 愛された日も無いような 君だからこそ 憧れていたんだ ずっと まだ 名前も知らない 君が 大声で叫んだ それじゃ 今度は何処で 何をしましょう 写真に写る時の笑い顔は 何度やっても 何度やっても ボクじゃ上手く撮れないのさ 根腐れてた程度じゃ幾らでも愛したから 細い首に青痣 潮風で隠れていたんだ 御免蒙る前でも 今日日ボクらであるように 君だからこそ 此処まで来れたんだ やっと ただ 棒切れの足で 流れ に身を任せていた それしか ボクはまだ 思いつかない 踏切越える前に踊りだした どうせだったら どうせだったら 少しだけ暴れてみようか let's bring the house down(れっつぶりんぐざはうすだうん) it is recording(いてぃずれこーでぃんぐ) まだ 名前も知らない 君が 大声で叫んだ いつか 今度は遠くの方まで行きましょう 写真に写る時に笑えないんだ 何度やっても 何度やっても 何度やっても 何度やっても もう 此処ら辺でバイバイ 君は これ以上行けない これで どうでもいい程 笑って お開き 写真も全部 全部 全部 こんなことは こんなことは 莫迦らしく言わせてくれよ 君はただの幽霊なんだ コメント 売れてほしいが独り占めしたい矛盾 -- 名無しさん (2021-12-07 21 24 55) それな -- めろん (2022-01-06 21 53 00) ほんっと好きめっちゃ好き -- 名無しさん (2022-02-01 00 38 47) 名前 コメント
https://w.atwiki.jp/teematsu/pages/40.html
インストールすべきソフト スリープ ダイアルアップ接続のログ バッテリー節約 ユーザー情報の移行 インストールすべきソフト ウィルス対策ソフト Adobe Reader スリープ 普通のスリープと、ハイブリッドスリープがある。ハイブリッドスリープは、メモリにデータを残しつつ、スリープ時にハードディスクにも記録する。 設定方法 コントロールパネル 電源オプション プラン設定の変更 詳細な電源設定の変更 スリープ ハイブリッドスリープを許可する をオンに。 普通スリープの場合でも、「次の時間が経過後に休止状態にする」の時間がスリープ中に経過するとハードディスクに退避されるらしい? (本当か??) ダイアルアップ接続のログ モデムとの通信のログは以下の場所にあった。 C \Windows\ModemLogs PPP.logみたいなのはないのか? バッテリー節約 Bluetooth, 無線LANをOFFに デバイスマネージャーで「無効」にする (本当にOFFになっているかは不明) コントロールパネル システムとメンテナンス パフォーマンスの情報とツール 視覚効果の調整の[視覚効果]タブで[パフォーマンスを優先する] コントロールパネル システムとメンテナンス 電源オプション で新しい電源プランを作成。ワイヤレスアダプタ、プロセッサの電源管理、などを最小に。検索とインデックス作成を省電力に。 コントロールパネル インデックスのオプション、でインデックス対象を減らす。(無しにはできない?) ユーザー情報の移行 Windows自動インストールキットに含まれるUSMTを使う http //www.computerworld.jp/topics/win7/166469-5.html http //www.microsoft.com/downloads/details.aspx?familyid=C7D4BC6D-15F3-4284-9123-679830D629F2 displaylang=ja http //technet.microsoft.com/ja-jp/library/dd560801(WS.10).aspx 名前 コメント